summaryrefslogtreecommitdiff
path: root/spec/integration/java
diff options
context:
space:
mode:
authorCan Eldem <celdem@gitlab.com>2020-06-08 12:16:35 +0000
committerCan Eldem <celdem@gitlab.com>2020-06-08 12:16:35 +0000
commit5eef2e4c1a5c28f4e2b8e48e4701dae56264a979 (patch)
treef853dc1c8601fb4222908f2ce8d4e03880367db3 /spec/integration/java
parent12ef778891c4bf9fae19ffdc9d566fc7ab309957 (diff)
parent55d3e5288826e21286054ed7cbaaec15e037f1dd (diff)
Merge branch 'asdf-java-version' into 'master'v3.11.2
Load the configured version of Java/Python See merge request gitlab-org/security-products/license-management!163
Diffstat (limited to 'spec/integration/java')
-rw-r--r--spec/integration/java/maven_spec.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/integration/java/maven_spec.rb b/spec/integration/java/maven_spec.rb
index 85637b2..9230a9f 100644
--- a/spec/integration/java/maven_spec.rb
+++ b/spec/integration/java/maven_spec.rb
@@ -100,4 +100,46 @@ RSpec.describe "maven" do
specify { expect(report.dependency_names).to match_array(['jackson-core']) }
specify { expect(report.licenses_for('jackson-core')).to match_array(['Apache-2.0']) }
end
+
+ context "when specifying the version of java 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
+
+ java -version &> '#{output_file}'
+ SCRIPT
+ end
+ end
+
+ it 'prioritizes `LM_JAVA_VERSION` over the `ASDF_JAVA_VERSION`' do
+ runner.scan(env: {
+ 'ASDF_JAVA_VERSION' => 'adopt-openjdk-11.0.7+10',
+ 'LM_JAVA_VERSION' => '8',
+ 'SETUP_CMD' => 'bash custom.sh'
+ })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('openjdk version "1.8.0_242"')
+ end
+
+ it 'reads the ASDF_JAVA_VERSION' do
+ runner.scan(env: {
+ 'ASDF_JAVA_VERSION' => 'adopt-openjdk-11.0.7+10',
+ 'SETUP_CMD' => 'bash custom.sh'
+ })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('openjdk version "11.0.7"')
+ end
+
+ it 'defaults to java 8' do
+ runner.scan(env: { 'SETUP_CMD' => 'bash custom.sh' })
+
+ expect(output_file).to exist
+ expect(output_file.read).to include('openjdk version "1.8.0_242"')
+ end
+ end
end