summaryrefslogtreecommitdiff
path: root/spec/unit/java
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2020-03-03 10:05:44 -0700
committermo khan <mo.khan@gmail.com>2020-03-03 10:05:44 -0700
commit9273188c9abceb4675a32cfbdc40760a454b479d (patch)
tree6753a7a160f78490d8dbad0dc71bb73a356fdc40 /spec/unit/java
parent689ad02603a1eacb79eaf0a93f63f6d727dadda8 (diff)
Extract java namespace
Diffstat (limited to 'spec/unit/java')
-rw-r--r--spec/unit/java/parsers/maven_spec.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/unit/java/parsers/maven_spec.rb b/spec/unit/java/parsers/maven_spec.rb
new file mode 100644
index 0000000..3c75fcc
--- /dev/null
+++ b/spec/unit/java/parsers/maven_spec.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+RSpec.describe Spandx::Java::Parsers::Maven do
+ subject { described_class.new(catalogue: catalogue) }
+
+ let(:catalogue) { Spandx::Catalogue.from_file(fixture_file('spdx/json/licenses.json')) }
+
+ describe '#parse' do
+ context 'when parsing a simple-pom.xml' do
+ let(:lockfile) { fixture_file('maven/simple-pom.xml') }
+
+ let(:because) do
+ VCR.use_cassette(File.basename(lockfile)) do
+ subject.parse(lockfile)
+ end
+ end
+
+ specify { expect(because[0].name).to eql('junit') }
+ specify { expect(because[0].version).to eql('3.8.1') }
+ specify { expect(because[0].licenses.map(&:id)).to match_array(['CPL-1.0']) }
+ end
+ end
+
+ describe '.matches?' do
+ subject { described_class }
+
+ specify { expect(subject.matches?('pom.xml')).to be(true) }
+ specify { expect(subject.matches?('sitemap.xml')).to be(false) }
+ end
+end