summaryrefslogtreecommitdiff
path: root/spec/integration/java
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2020-03-18 17:40:46 +0000
committermo khan <mo.khan@gmail.com>2020-03-18 17:40:46 +0000
commit08204f2633e2548326f7623ff73dd8db6461c963 (patch)
treedac8cd040cb3cc9ad6c0e0b4aa46cda67005b16c /spec/integration/java
parent783b136f3e39aca8c8ec4c8d65d44bbf2dbf5d74 (diff)
parentd900a27a7291fcbc2d699fff8590b4e19eaf475a (diff)
Merge branch '33727-airgap' into 'master'v3.1.0
Scan maven projects with dependencies from a custom repository See merge request gitlab-org/security-products/license-management!120
Diffstat (limited to 'spec/integration/java')
-rw-r--r--spec/integration/java/maven_spec.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/integration/java/maven_spec.rb b/spec/integration/java/maven_spec.rb
index 6e1752f..8d1ad20 100644
--- a/spec/integration/java/maven_spec.rb
+++ b/spec/integration/java/maven_spec.rb
@@ -2,4 +2,29 @@ require 'spec_helper'
RSpec.describe "maven" do
include_examples "each report version", "java", "maven"
+
+ describe "When the maven dependencies come from a custom public maven repository" do
+ it 'is able to detect some of the licenses' do
+ runner.add_file('pom.xml', fixture_file_content('pom-public-gitlab-repository.xml'))
+
+ report = runner.scan(env: { 'CI_PROJECT_ID' => '17523603' })
+
+ expect(report).to match_schema(version: '2.0')
+ expect(report[:dependencies]).to match_array([{ name: 'mvn-spike', url: '', description: '', paths: ['.'], licenses: ['MIT'] }])
+ end
+
+ it 'downloads packages from by using a custom `settings.xml`' do
+ runner.add_file('pom.xml', fixture_file_content('pom-public-gitlab-repository.xml'))
+ runner.add_file('my_settings.xml', fixture_file_content('custom-maven-settings.xml'))
+
+ report = runner.scan(env: {
+ 'CI_DEBUG_TRACE' => 'true',
+ 'CI_PROJECT_ID' => 'invalid',
+ 'MAVEN_CLI_OPTS' => "--settings my_settings.xml"
+ })
+
+ expect(report).to match_schema(version: '2.0')
+ expect(report[:dependencies]).to match_array([{ name: 'mvn-spike', url: '', description: '', paths: ['.'], licenses: ['MIT'] }])
+ end
+ end
end