summaryrefslogtreecommitdiff
path: root/spec/integration/python
diff options
context:
space:
mode:
Diffstat (limited to 'spec/integration/python')
-rw-r--r--spec/integration/python/pip_spec.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/integration/python/pip_spec.rb b/spec/integration/python/pip_spec.rb
index 0ba3d0e..e808188 100644
--- a/spec/integration/python/pip_spec.rb
+++ b/spec/integration/python/pip_spec.rb
@@ -157,4 +157,46 @@ setup(
expect(report.licenses_for('requests')).to match_array(['Apache-2.0'])
end
end
+
+ context "when specifying the version of Python using environment variables" do
+ let(:output_file) { Pathname.new(runner.project_path.join('output.txt')) }
+
+ before do
+ runner.add_file('custom.sh') do
+ <<~SCRIPT
+ #!/bin/bash -l
+
+ python --version &> '#{output_file}'
+ SCRIPT
+ end
+ end
+
+ it 'prioritizes `LM_PYTHON_VERSION` over the `ASDF_PYTHON_VERSION`' do
+ runner.scan(env: {
+ 'ASDF_PYTHON_VERSION' => '3.8.2',
+ 'LM_PYTHON_VERSION' => '2.7.18',
+ 'SETUP_CMD' => 'bash custom.sh'
+ })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('2.7.18')
+ end
+
+ it 'reads the ASDF_PYTHON_VERSION' do
+ runner.scan(env: {
+ 'ASDF_PYTHON_VERSION' => '3.8.2',
+ 'SETUP_CMD' => 'bash custom.sh'
+ })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('3.8.2')
+ end
+
+ it 'defaults to Python 3' do
+ runner.scan(env: { 'SETUP_CMD' => 'bash custom.sh' })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('3.8.2')
+ end
+ end
end