aboutsummaryrefslogtreecommitdiff
path: root/tvloader
diff options
context:
space:
mode:
authorSteve Winslow <steve@swinslow.net>2020-11-08 13:41:00 -0500
committerSteve Winslow <steve@swinslow.net>2020-11-08 13:41:00 -0500
commitae78e67710eece172cc8990ced41688777cf4e1e (patch)
tree8540cdf04093210194aac47d15d19f87d5c18db4 /tvloader
parent5a270f97f4106cf989761f9143e23132c1bffb3c (diff)
downloadspdx-tools-ae78e67710eece172cc8990ced41688777cf4e1e.tar.gz
Fix tvloader storing incorrect doc ID
Signed-off-by: Steve Winslow <steve@swinslow.net>
Diffstat (limited to 'tvloader')
-rw-r--r--tvloader/parser2v1/parse_creation_info.go6
-rw-r--r--tvloader/parser2v1/parse_creation_info_test.go2
-rw-r--r--tvloader/parser2v1/parser_test.go5
-rw-r--r--tvloader/parser2v2/parse_creation_info.go6
-rw-r--r--tvloader/parser2v2/parse_creation_info_test.go2
-rw-r--r--tvloader/parser2v2/parser_test.go4
6 files changed, 16 insertions, 9 deletions
diff --git a/tvloader/parser2v1/parse_creation_info.go b/tvloader/parser2v1/parse_creation_info.go
index b02b5c0..87997ca 100644
--- a/tvloader/parser2v1/parse_creation_info.go
+++ b/tvloader/parser2v1/parse_creation_info.go
@@ -26,7 +26,11 @@ func (parser *tvParser2_1) parsePairFromCreationInfo2_1(tag string, value string
case "DataLicense":
ci.DataLicense = value
case "SPDXID":
- ci.SPDXIdentifier = spdx.ElementID(value)
+ eID, err := extractElementID(value)
+ if err != nil {
+ return err
+ }
+ ci.SPDXIdentifier = eID
case "DocumentName":
ci.DocumentName = value
case "DocumentNamespace":
diff --git a/tvloader/parser2v1/parse_creation_info_test.go b/tvloader/parser2v1/parse_creation_info_test.go
index f21cfd1..1a11a18 100644
--- a/tvloader/parser2v1/parse_creation_info_test.go
+++ b/tvloader/parser2v1/parse_creation_info_test.go
@@ -217,7 +217,7 @@ func TestParser2_1CanParseCreationInfoTags(t *testing.T) {
if err != nil {
t.Errorf("expected nil error, got %v", err)
}
- if parser.doc.CreationInfo.SPDXIdentifier != "SPDXRef-DOCUMENT" {
+ if parser.doc.CreationInfo.SPDXIdentifier != "DOCUMENT" {
t.Errorf("got %v for SPDXIdentifier", parser.doc.CreationInfo.SPDXIdentifier)
}
diff --git a/tvloader/parser2v1/parser_test.go b/tvloader/parser2v1/parser_test.go
index 543cb8f..4a61828 100644
--- a/tvloader/parser2v1/parser_test.go
+++ b/tvloader/parser2v1/parser_test.go
@@ -30,8 +30,8 @@ func TestParser2_1CanParseTagValues(t *testing.T) {
if doc.CreationInfo.DataLicense != "CC0-1.0" {
t.Errorf("expected DataLicense to be CC0-1.0, got %v", doc.CreationInfo.DataLicense)
}
- if doc.CreationInfo.SPDXIdentifier != "SPDXRef-DOCUMENT" {
- t.Errorf("expected SPDXIdentifier to be SPDXRef-DOCUMENT, got %v", doc.CreationInfo.SPDXIdentifier)
+ if doc.CreationInfo.SPDXIdentifier != "DOCUMENT" {
+ t.Errorf("expected SPDXIdentifier to be DOCUMENT, got %v", doc.CreationInfo.SPDXIdentifier)
}
}
@@ -77,4 +77,3 @@ func TestParser2_1StartFailsToParseIfInInvalidState(t *testing.T) {
t.Errorf("expected non-nil error, got nil")
}
}
-
diff --git a/tvloader/parser2v2/parse_creation_info.go b/tvloader/parser2v2/parse_creation_info.go
index 9c84404..3f3918e 100644
--- a/tvloader/parser2v2/parse_creation_info.go
+++ b/tvloader/parser2v2/parse_creation_info.go
@@ -26,7 +26,11 @@ func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string
case "DataLicense":
ci.DataLicense = value
case "SPDXID":
- ci.SPDXIdentifier = spdx.ElementID(value)
+ eID, err := extractElementID(value)
+ if err != nil {
+ return err
+ }
+ ci.SPDXIdentifier = eID
case "DocumentName":
ci.DocumentName = value
case "DocumentNamespace":
diff --git a/tvloader/parser2v2/parse_creation_info_test.go b/tvloader/parser2v2/parse_creation_info_test.go
index 0be6110..2f48adb 100644
--- a/tvloader/parser2v2/parse_creation_info_test.go
+++ b/tvloader/parser2v2/parse_creation_info_test.go
@@ -217,7 +217,7 @@ func TestParser2_2CanParseCreationInfoTags(t *testing.T) {
if err != nil {
t.Errorf("expected nil error, got %v", err)
}
- if parser.doc.CreationInfo.SPDXIdentifier != "SPDXRef-DOCUMENT" {
+ if parser.doc.CreationInfo.SPDXIdentifier != "DOCUMENT" {
t.Errorf("got %v for SPDXIdentifier", parser.doc.CreationInfo.SPDXIdentifier)
}
diff --git a/tvloader/parser2v2/parser_test.go b/tvloader/parser2v2/parser_test.go
index a2de032..7eec49c 100644
--- a/tvloader/parser2v2/parser_test.go
+++ b/tvloader/parser2v2/parser_test.go
@@ -30,8 +30,8 @@ func TestParser2_2CanParseTagValues(t *testing.T) {
if doc.CreationInfo.DataLicense != "CC0-1.0" {
t.Errorf("expected DataLicense to be CC0-1.0, got %v", doc.CreationInfo.DataLicense)
}
- if doc.CreationInfo.SPDXIdentifier != "SPDXRef-DOCUMENT" {
- t.Errorf("expected SPDXIdentifier to be SPDXRef-DOCUMENT, got %v", doc.CreationInfo.SPDXIdentifier)
+ if doc.CreationInfo.SPDXIdentifier != "DOCUMENT" {
+ t.Errorf("expected SPDXIdentifier to be DOCUMENT, got %v", doc.CreationInfo.SPDXIdentifier)
}
}