aboutsummaryrefslogtreecommitdiff
path: root/tvloader/parser2v2
diff options
context:
space:
mode:
authorBrandon Lum <lumjjb@gmail.com>2022-07-19 16:43:48 -0400
committerBrandon Lum <lumjjb@gmail.com>2022-07-19 22:43:24 -0400
commit9ae1bd2f8e0dabb0845f1225b54f23e8f3a429f1 (patch)
treea43213aadfb9bde3d9ec15634a39305f19ff38b2 /tvloader/parser2v2
parent41d2272711255f5a25e16e3507ec3318bc550189 (diff)
downloadspdx-tools-9ae1bd2f8e0dabb0845f1225b54f23e8f3a429f1.tar.gz
replace all v2_1, v2_2 with new convention
Signed-off-by: Brandon Lum <lumjjb@gmail.com>
Diffstat (limited to 'tvloader/parser2v2')
-rw-r--r--tvloader/parser2v2/parse_annotation_test.go16
-rw-r--r--tvloader/parser2v2/parse_creation_info.go13
-rw-r--r--tvloader/parser2v2/parse_creation_info_test.go30
-rw-r--r--tvloader/parser2v2/parse_file.go25
-rw-r--r--tvloader/parser2v2/parse_file_test.go113
-rw-r--r--tvloader/parser2v2/parse_other_license.go8
-rw-r--r--tvloader/parser2v2/parse_other_license_test.go52
-rw-r--r--tvloader/parser2v2/parse_package.go33
-rw-r--r--tvloader/parser2v2/parse_package_test.go131
-rw-r--r--tvloader/parser2v2/parse_relationship_test.go24
-rw-r--r--tvloader/parser2v2/parse_review.go8
-rw-r--r--tvloader/parser2v2/parse_review_test.go100
-rw-r--r--tvloader/parser2v2/parse_snippet.go19
-rw-r--r--tvloader/parser2v2/parse_snippet_test.go117
-rw-r--r--tvloader/parser2v2/parser.go11
-rw-r--r--tvloader/parser2v2/types.go25
-rw-r--r--tvloader/parser2v2/util.go32
-rw-r--r--tvloader/parser2v2/util_test.go8
18 files changed, 387 insertions, 378 deletions
diff --git a/tvloader/parser2v2/parse_annotation_test.go b/tvloader/parser2v2/parse_annotation_test.go
index cdd0541..c2ba487 100644
--- a/tvloader/parser2v2/parse_annotation_test.go
+++ b/tvloader/parser2v2/parse_annotation_test.go
@@ -4,13 +4,13 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Annotation section tests =====
func TestParser2_2FailsIfAnnotationNotSet(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePairForAnnotation2_2("Annotator", "Person: John Doe (jdoe@example.com)")
@@ -21,7 +21,7 @@ func TestParser2_2FailsIfAnnotationNotSet(t *testing.T) {
func TestParser2_2FailsIfAnnotationTagUnknown(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
// start with valid annotator
@@ -38,7 +38,7 @@ func TestParser2_2FailsIfAnnotationTagUnknown(t *testing.T) {
func TestParser2_2FailsIfAnnotationFieldsWithoutAnnotation(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("AnnotationDate", "2018-09-15T17:25:00Z")
@@ -61,7 +61,7 @@ func TestParser2_2FailsIfAnnotationFieldsWithoutAnnotation(t *testing.T) {
func TestParser2_2CanParseAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -121,7 +121,7 @@ func TestParser2_2CanParseAnnotationTags(t *testing.T) {
func TestParser2_2FailsIfAnnotatorInvalid(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("Annotator", "John Doe (jdoe@example.com)")
@@ -132,7 +132,7 @@ func TestParser2_2FailsIfAnnotatorInvalid(t *testing.T) {
func TestParser2_2FailsIfAnnotatorTypeInvalid(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("Annotator", "Human: John Doe (jdoe@example.com)")
@@ -143,7 +143,7 @@ func TestParser2_2FailsIfAnnotatorTypeInvalid(t *testing.T) {
func TestParser2_2FailsIfAnnotationRefInvalid(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
// start with valid annotator
diff --git a/tvloader/parser2v2/parse_creation_info.go b/tvloader/parser2v2/parse_creation_info.go
index f8406fc..da258bd 100644
--- a/tvloader/parser2v2/parse_creation_info.go
+++ b/tvloader/parser2v2/parse_creation_info.go
@@ -6,7 +6,8 @@ import (
"fmt"
"strings"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string) error {
@@ -17,7 +18,7 @@ func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string
// create an SPDX Creation Info data struct if we don't have one already
if parser.doc.CreationInfo == nil {
- parser.doc.CreationInfo = &spdx.CreationInfo2_2{}
+ parser.doc.CreationInfo = &v2_2.CreationInfo{}
}
ci := parser.doc.CreationInfo
@@ -30,7 +31,7 @@ func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string
return err
}
- creator := spdx.Creator{Creator: subvalue}
+ creator := common.Creator{Creator: subvalue}
switch subkey {
case "Person", "Organization", "Tool":
creator.CreatorType = subkey
@@ -54,7 +55,7 @@ func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string
return fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName)
}
parser.st = psPackage2_2
- parser.pkg = &spdx.Package2_2{
+ parser.pkg = &v2_2.Package{
FilesAnalyzed: true,
IsFilesAnalyzedTagPresent: false,
}
@@ -75,14 +76,14 @@ func (parser *tvParser2_2) parsePairFromCreationInfo2_2(tag string, value string
return parser.parsePairFromReview2_2(tag, value)
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
diff --git a/tvloader/parser2v2/parse_creation_info_test.go b/tvloader/parser2v2/parse_creation_info_test.go
index 7121346..dcf6098 100644
--- a/tvloader/parser2v2/parse_creation_info_test.go
+++ b/tvloader/parser2v2/parse_creation_info_test.go
@@ -4,13 +4,13 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser creation info state change tests =====
func TestParser2_2CIMovesToPackageAfterParsingPackageNameTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
pkgName := "testPkg"
@@ -46,7 +46,7 @@ func TestParser2_2CIMovesToPackageAfterParsingPackageNameTag(t *testing.T) {
func TestParser2_2CIMovesToFileAfterParsingFileNameTagWithNoPackages(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("FileName", "testFile")
@@ -66,7 +66,7 @@ func TestParser2_2CIMovesToFileAfterParsingFileNameTagWithNoPackages(t *testing.
func TestParser2_2CIMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("LicenseID", "LicenseRef-TestLic")
@@ -80,7 +80,7 @@ func TestParser2_2CIMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T) {
func TestParser2_2CIMovesToReviewAfterParsingReviewerTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("Reviewer", "Person: John Doe")
@@ -94,7 +94,7 @@ func TestParser2_2CIMovesToReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2CIStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -117,7 +117,7 @@ func TestParser2_2CIStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2CIStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -164,7 +164,7 @@ func TestParser2_2CIStaysAfterParsingAnnotationTags(t *testing.T) {
func TestParser2_2FailsParsingCreationInfoWithInvalidState(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psPackage2_2,
}
err := parser.parsePairFromCreationInfo2_2("SPDXVersion", "SPDX-2.2")
@@ -176,7 +176,7 @@ func TestParser2_2FailsParsingCreationInfoWithInvalidState(t *testing.T) {
// ===== Creation Info section tests =====
func TestParser2_2HasCreationInfoAfterCallToParseFirstTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePairFromCreationInfo2_2("LicenseListVersion", "3.9")
@@ -190,7 +190,7 @@ func TestParser2_2HasCreationInfoAfterCallToParseFirstTag(t *testing.T) {
func TestParser2_2CanParseCreationInfoTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -281,7 +281,7 @@ func TestParser2_2CanParseCreationInfoTags(t *testing.T) {
func TestParser2_2InvalidCreatorTagsFail(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -298,7 +298,7 @@ func TestParser2_2InvalidCreatorTagsFail(t *testing.T) {
func TestParser2_2CreatorTagWithMultipleColonsPasses(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -310,7 +310,7 @@ func TestParser2_2CreatorTagWithMultipleColonsPasses(t *testing.T) {
func TestParser2_2CIUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -322,7 +322,7 @@ func TestParser2_2CIUnknownTagFails(t *testing.T) {
func TestParser2_2CICreatesRelationship(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -340,7 +340,7 @@ func TestParser2_2CICreatesRelationship(t *testing.T) {
func TestParser2_2CICreatesAnnotation(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
diff --git a/tvloader/parser2v2/parse_file.go b/tvloader/parser2v2/parse_file.go
index e564147..96cefce 100644
--- a/tvloader/parser2v2/parse_file.go
+++ b/tvloader/parser2v2/parse_file.go
@@ -5,7 +5,8 @@ package parser2v2
import (
"fmt"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error {
@@ -22,7 +23,7 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error
if parser.file != nil && parser.file.FileSPDXIdentifier == nullSpdxElementId2_2 {
return fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName)
}
- parser.file = &spdx.File2_2{}
+ parser.file = &v2_2.File{}
parser.file.FileName = value
// tag for creating new package section and going back to parsing Package
case "PackageName":
@@ -50,12 +51,12 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error
parser.file.FileSPDXIdentifier = eID
if parser.pkg == nil {
if parser.doc.Files == nil {
- parser.doc.Files = []*spdx.File2_2{}
+ parser.doc.Files = []*v2_2.File{}
}
parser.doc.Files = append(parser.doc.Files, parser.file)
} else {
if parser.pkg.Files == nil {
- parser.pkg.Files = []*spdx.File2_2{}
+ parser.pkg.Files = []*v2_2.File{}
}
parser.pkg.Files = append(parser.pkg.Files, parser.file)
}
@@ -67,12 +68,12 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error
return err
}
if parser.file.Checksums == nil {
- parser.file.Checksums = []spdx.Checksum{}
+ parser.file.Checksums = []common.Checksum{}
}
- switch spdx.ChecksumAlgorithm(subkey) {
- case spdx.SHA1, spdx.SHA256, spdx.MD5:
- algorithm := spdx.ChecksumAlgorithm(subkey)
- parser.file.Checksums = append(parser.file.Checksums, spdx.Checksum{Algorithm: algorithm, Value: subvalue})
+ switch common.ChecksumAlgorithm(subkey) {
+ case common.SHA1, common.SHA256, common.MD5:
+ algorithm := common.ChecksumAlgorithm(subkey)
+ parser.file.Checksums = append(parser.file.Checksums, common.Checksum{Algorithm: algorithm, Value: subvalue})
default:
return fmt.Errorf("got unknown checksum type %s", subkey)
}
@@ -85,7 +86,7 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error
case "FileCopyrightText":
parser.file.FileCopyrightText = value
case "ArtifactOfProjectName":
- parser.fileAOP = &spdx.ArtifactOfProject2_2{}
+ parser.fileAOP = &v2_2.ArtifactOfProject{}
parser.file.ArtifactOfProjects = append(parser.file.ArtifactOfProjects, parser.fileAOP)
parser.fileAOP.Name = value
case "ArtifactOfProjectHomePage":
@@ -110,14 +111,14 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error
parser.file.FileAttributionTexts = append(parser.file.FileAttributionTexts, value)
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
diff --git a/tvloader/parser2v2/parse_file_test.go b/tvloader/parser2v2/parse_file_test.go
index 30f9f5e..7341d9e 100644
--- a/tvloader/parser2v2/parse_file_test.go
+++ b/tvloader/parser2v2/parse_file_test.go
@@ -4,7 +4,8 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser file section state change tests =====
@@ -13,10 +14,10 @@ func TestParser2_2FileStartsNewFileAfterParsingFileNameTag(t *testing.T) {
fileOldName := "f1.txt"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: fileOldName, FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: fileOldName, FileSPDXIdentifier: "f1"},
}
fileOld := parser.file
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -88,7 +89,7 @@ func TestParser2_2FileStartsNewFileAfterParsingFileNameTag(t *testing.T) {
func TestParser2_2FileAddsToPackageOrUnpackagedFiles(t *testing.T) {
// start with no packages
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -149,10 +150,10 @@ func TestParser2_2FileStartsNewPackageAfterParsingPackageNameTag(t *testing.T) {
f1Name := "f1.txt"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: p1Name, PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: f1Name, FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: p1Name, PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: f1Name, FileSPDXIdentifier: "f1"},
}
p1 := parser.pkg
f1 := parser.file
@@ -217,10 +218,10 @@ func TestParser2_2FileStartsNewPackageAfterParsingPackageNameTag(t *testing.T) {
func TestParser2_2FileMovesToSnippetAfterParsingSnippetSPDXIDTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -242,10 +243,10 @@ func TestParser2_2FileMovesToSnippetAfterParsingSnippetSPDXIDTag(t *testing.T) {
func TestParser2_2FileMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -261,10 +262,10 @@ func TestParser2_2FileMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T)
func TestParser2_2FileMovesToReviewAfterParsingReviewerTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -280,10 +281,10 @@ func TestParser2_2FileMovesToReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2FileStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -309,10 +310,10 @@ func TestParser2_2FileStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2FileStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -361,9 +362,9 @@ func TestParser2_2FileStaysAfterParsingAnnotationTags(t *testing.T) {
// ===== File data section tests =====
func TestParser2_2CanParseFileTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -445,15 +446,15 @@ func TestParser2_2CanParseFileTags(t *testing.T) {
}
for _, checksum := range parser.file.Checksums {
switch checksum.Algorithm {
- case spdx.SHA1:
+ case common.SHA1:
if checksum.Value != codeSha1 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha1, checksum.Value)
}
- case spdx.SHA256:
+ case common.SHA256:
if checksum.Value != codeSha256 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha256, checksum.Value)
}
- case spdx.MD5:
+ case common.MD5:
if checksum.Value != codeMd5 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeMd5, checksum.Value)
}
@@ -703,10 +704,10 @@ func TestParser2_2CanParseFileTags(t *testing.T) {
func TestParser2_2FileCreatesRelationshipInDocument(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -725,10 +726,10 @@ func TestParser2_2FileCreatesRelationshipInDocument(t *testing.T) {
func TestParser2_2FileCreatesAnnotationInDocument(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -747,10 +748,10 @@ func TestParser2_2FileCreatesAnnotationInDocument(t *testing.T) {
func TestParser2_2FileUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -763,10 +764,10 @@ func TestParser2_2FileUnknownTagFails(t *testing.T) {
func TestFileAOPPointerChangesAfterTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -820,9 +821,9 @@ func TestFileAOPPointerChangesAfterTags(t *testing.T) {
func TestParser2_2FailsIfInvalidSPDXIDInFileSection(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -840,9 +841,9 @@ func TestParser2_2FailsIfInvalidSPDXIDInFileSection(t *testing.T) {
func TestParser2_2FailsIfInvalidChecksumFormatInFileSection(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -860,9 +861,9 @@ func TestParser2_2FailsIfInvalidChecksumFormatInFileSection(t *testing.T) {
func TestParser2_1FailsIfUnknownChecksumTypeInFileSection(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -880,9 +881,9 @@ func TestParser2_1FailsIfUnknownChecksumTypeInFileSection(t *testing.T) {
func TestParser2_2FailsIfArtifactHomePageBeforeArtifactName(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -900,9 +901,9 @@ func TestParser2_2FailsIfArtifactHomePageBeforeArtifactName(t *testing.T) {
func TestParser2_2FailsIfArtifactURIBeforeArtifactName(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -921,9 +922,9 @@ func TestParser2_2FailsIfArtifactURIBeforeArtifactName(t *testing.T) {
func TestParser2_2FilesWithoutSpdxIdThrowError(t *testing.T) {
// case 1: The previous file (packaged or unpackaged) does not contain spdx ID
parser1 := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
- file: &spdx.File2_2{FileName: "FileName"},
+ file: &v2_2.File{FileName: "FileName"},
}
err := parser1.parsePair2_2("FileName", "f2")
@@ -934,11 +935,11 @@ func TestParser2_2FilesWithoutSpdxIdThrowError(t *testing.T) {
// case 2: Invalid file with snippet
// Last unpackaged file before the snippet start
fileName := "f2.txt"
- sid1 := spdx.ElementID("s1")
+ sid1 := common.ElementID("s1")
parser2 := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
- file: &spdx.File2_2{FileName: fileName},
+ file: &v2_2.File{FileName: fileName},
}
err = parser2.parsePair2_2("SnippetSPDXID", string(sid1))
if err == nil {
@@ -949,7 +950,7 @@ func TestParser2_2FilesWithoutSpdxIdThrowError(t *testing.T) {
// Last unpackaged file before the package starts
// Last file of a package and New package starts
parser3 := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
fileName = "f3.txt"
diff --git a/tvloader/parser2v2/parse_other_license.go b/tvloader/parser2v2/parse_other_license.go
index 371f834..95250a6 100644
--- a/tvloader/parser2v2/parse_other_license.go
+++ b/tvloader/parser2v2/parse_other_license.go
@@ -5,14 +5,14 @@ package parser2v2
import (
"fmt"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromOtherLicense2_2(tag string, value string) error {
switch tag {
// tag for creating new other license section
case "LicenseID":
- parser.otherLic = &spdx.OtherLicense2_2{}
+ parser.otherLic = &v2_2.OtherLicense{}
parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic)
parser.otherLic.LicenseIdentifier = value
case "ExtractedText":
@@ -25,14 +25,14 @@ func (parser *tvParser2_2) parsePairFromOtherLicense2_2(tag string, value string
parser.otherLic.LicenseComment = value
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
diff --git a/tvloader/parser2v2/parse_other_license_test.go b/tvloader/parser2v2/parse_other_license_test.go
index e0607ee..cdba840 100644
--- a/tvloader/parser2v2/parse_other_license_test.go
+++ b/tvloader/parser2v2/parse_other_license_test.go
@@ -4,7 +4,7 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser other license section state change tests =====
@@ -14,11 +14,11 @@ func TestParser2_2OLStartsNewOtherLicenseAfterParsingLicenseIDTag(t *testing.T)
olname1 := "License 11"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: olid1,
LicenseName: olname1,
},
@@ -90,10 +90,10 @@ func TestParser2_2OLStartsNewOtherLicenseAfterParsingLicenseIDTag(t *testing.T)
func TestParser2_2OLMovesToReviewAfterParsingReviewerTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -110,11 +110,11 @@ func TestParser2_2OLMovesToReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2OtherLicenseStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-whatever",
LicenseName: "the whatever license",
},
@@ -152,11 +152,11 @@ func TestParser2_2OtherLicenseStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2OtherLicenseStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-whatever",
LicenseName: "the whatever license",
},
@@ -216,11 +216,11 @@ func TestParser2_2OtherLicenseStaysAfterParsingAnnotationTags(t *testing.T) {
func TestParser2_2OLFailsAfterParsingOtherSectionTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
@@ -247,10 +247,10 @@ func TestParser2_2OLFailsAfterParsingOtherSectionTags(t *testing.T) {
// ===== Other License data section tests =====
func TestParser2_2CanParseOtherLicenseTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -323,10 +323,10 @@ func TestParser2_2CanParseOtherLicenseTags(t *testing.T) {
func TestParser2_2OLUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psOtherLicense2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
diff --git a/tvloader/parser2v2/parse_package.go b/tvloader/parser2v2/parse_package.go
index 4d6caf9..e8dbd7e 100644
--- a/tvloader/parser2v2/parse_package.go
+++ b/tvloader/parser2v2/parse_package.go
@@ -6,7 +6,8 @@ import (
"fmt"
"strings"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) error {
@@ -24,7 +25,7 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
if parser.pkg != nil && parser.pkg.PackageSPDXIdentifier == nullSpdxElementId2_2 {
return fmt.Errorf("package with PackageName %s does not have SPDX identifier", parser.pkg.PackageName)
}
- parser.pkg = &spdx.Package2_2{
+ parser.pkg = &v2_2.Package{
FilesAnalyzed: true,
IsFilesAnalyzedTagPresent: false,
}
@@ -45,7 +46,7 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
}
parser.pkg.PackageSPDXIdentifier = eID
if parser.doc.Packages == nil {
- parser.doc.Packages = []*spdx.Package2_2{}
+ parser.doc.Packages = []*v2_2.Package{}
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
case "PackageVersion":
@@ -53,7 +54,7 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
case "PackageFileName":
parser.pkg.PackageFileName = value
case "PackageSupplier":
- supplier := &spdx.Supplier{Supplier: value}
+ supplier := &common.Supplier{Supplier: value}
if value == "NOASSERTION" {
parser.pkg.PackageSupplier = supplier
break
@@ -72,7 +73,7 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
}
parser.pkg.PackageSupplier = supplier
case "PackageOriginator":
- originator := &spdx.Originator{Originator: value}
+ originator := &common.Originator{Originator: value}
if value == "NOASSERTION" {
parser.pkg.PackageOriginator = originator
break
@@ -107,12 +108,12 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
return err
}
if parser.pkg.PackageChecksums == nil {
- parser.pkg.PackageChecksums = []spdx.Checksum{}
+ parser.pkg.PackageChecksums = []common.Checksum{}
}
- switch spdx.ChecksumAlgorithm(subkey) {
- case spdx.SHA1, spdx.SHA256, spdx.MD5:
- algorithm := spdx.ChecksumAlgorithm(subkey)
- parser.pkg.PackageChecksums = append(parser.pkg.PackageChecksums, spdx.Checksum{Algorithm: algorithm, Value: subvalue})
+ switch common.ChecksumAlgorithm(subkey) {
+ case common.SHA1, common.SHA256, common.MD5:
+ algorithm := common.ChecksumAlgorithm(subkey)
+ parser.pkg.PackageChecksums = append(parser.pkg.PackageChecksums, common.Checksum{Algorithm: algorithm, Value: subvalue})
default:
return fmt.Errorf("got unknown checksum type %s", subkey)
}
@@ -139,7 +140,7 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
case "PackageAttributionText":
parser.pkg.PackageAttributionTexts = append(parser.pkg.PackageAttributionTexts, value)
case "ExternalRef":
- parser.pkgExtRef = &spdx.PackageExternalReference2_2{}
+ parser.pkgExtRef = &v2_2.PackageExternalReference{}
parser.pkg.PackageExternalReferences = append(parser.pkg.PackageExternalReferences, parser.pkgExtRef)
category, refType, locator, err := extractPackageExternalReference(value)
if err != nil {
@@ -157,14 +158,14 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
parser.pkgExtRef = nil
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
@@ -188,13 +189,13 @@ func (parser *tvParser2_2) parsePairFromPackage2_2(tag string, value string) err
// ===== Helper functions =====
-func extractCodeAndExcludes(value string) spdx.PackageVerificationCode {
+func extractCodeAndExcludes(value string) common.PackageVerificationCode {
// FIXME this should probably be done using regular expressions instead
// split by paren + word "excludes:"
sp := strings.SplitN(value, "(excludes:", 2)
if len(sp) < 2 {
// not found; return the whole string as just the code
- return spdx.PackageVerificationCode{Value: value, ExcludedFiles: []string{}}
+ return common.PackageVerificationCode{Value: value, ExcludedFiles: []string{}}
}
// if we're here, code is in first part and excludes filename is in
@@ -202,7 +203,7 @@ func extractCodeAndExcludes(value string) spdx.PackageVerificationCode {
code := strings.TrimSpace(sp[0])
parsedSp := strings.SplitN(sp[1], ")", 2)
fileName := strings.TrimSpace(parsedSp[0])
- return spdx.PackageVerificationCode{Value: code, ExcludedFiles: []string{fileName}}
+ return common.PackageVerificationCode{Value: code, ExcludedFiles: []string{fileName}}
}
func extractPackageExternalReference(value string) (string, string, string, error) {
diff --git a/tvloader/parser2v2/parse_package_test.go b/tvloader/parser2v2/parse_package_test.go
index 6b58d0f..a1610f7 100644
--- a/tvloader/parser2v2/parse_package_test.go
+++ b/tvloader/parser2v2/parse_package_test.go
@@ -4,7 +4,8 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser package section state change tests =====
@@ -13,9 +14,9 @@ func TestParser2_2PackageStartsNewPackageAfterParsingPackageNameTag(t *testing.T
pkgOldName := "p1"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: pkgOldName, PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: pkgOldName, PackageSPDXIdentifier: "p1"},
}
pkgOld := parser.pkg
parser.doc.Packages = append(parser.doc.Packages, pkgOld)
@@ -69,7 +70,7 @@ func TestParser2_2PackageStartsNewPackageAfterParsingPackageNameTagWhileInUnpack
// pkg is nil, so that Files appearing before the first PackageName tag
// are added to Files instead of Packages
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psFile2_2,
pkg: nil,
}
@@ -112,9 +113,9 @@ func TestParser2_2PackageStartsNewPackageAfterParsingPackageNameTagWhileInUnpack
func TestParser2_2PackageMovesToFileAfterParsingFileNameTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
pkgCurrent := parser.pkg
@@ -135,9 +136,9 @@ func TestParser2_2PackageMovesToFileAfterParsingFileNameTag(t *testing.T) {
func TestParser2_2PackageMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -152,9 +153,9 @@ func TestParser2_2PackageMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.
func TestParser2_2PackageMovesToReviewAfterParsingReviewerTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -169,9 +170,9 @@ func TestParser2_2PackageMovesToReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2PackageStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -196,9 +197,9 @@ func TestParser2_2PackageStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2PackageStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -246,9 +247,9 @@ func TestParser2_2PackageStaysAfterParsingAnnotationTags(t *testing.T) {
// ===== Package data section tests =====
func TestParser2_2CanParsePackageTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// should not yet be in Packages map, b/c no SPDX identifier
@@ -355,15 +356,15 @@ func TestParser2_2CanParsePackageTags(t *testing.T) {
}
for _, checksum := range parser.pkg.PackageChecksums {
switch checksum.Algorithm {
- case spdx.SHA1:
+ case common.SHA1:
if checksum.Value != codeSha1 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha1, checksum.Value)
}
- case spdx.SHA256:
+ case common.SHA256:
if checksum.Value != codeSha256 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha256, checksum.Value)
}
- case spdx.MD5:
+ case common.MD5:
if checksum.Value != codeMd5 {
t.Errorf("expected %s for FileChecksumSHA1, got %s", codeMd5, checksum.Value)
}
@@ -589,9 +590,9 @@ func TestParser2_2CanParsePackageTags(t *testing.T) {
func TestParser2_2CanParsePackageSupplierPersonTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -607,9 +608,9 @@ func TestParser2_2CanParsePackageSupplierPersonTag(t *testing.T) {
func TestParser2_2CanParsePackageSupplierOrganizationTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -625,9 +626,9 @@ func TestParser2_2CanParsePackageSupplierOrganizationTag(t *testing.T) {
func TestParser2_2CanParsePackageSupplierNOASSERTIONTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -643,9 +644,9 @@ func TestParser2_2CanParsePackageSupplierNOASSERTIONTag(t *testing.T) {
func TestParser2_2CanParsePackageOriginatorPersonTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -661,9 +662,9 @@ func TestParser2_2CanParsePackageOriginatorPersonTag(t *testing.T) {
func TestParser2_2CanParsePackageOriginatorOrganizationTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -679,9 +680,9 @@ func TestParser2_2CanParsePackageOriginatorOrganizationTag(t *testing.T) {
func TestParser2_2CanParsePackageOriginatorNOASSERTIONTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -697,9 +698,9 @@ func TestParser2_2CanParsePackageOriginatorNOASSERTIONTag(t *testing.T) {
func TestParser2_2CanParsePackageVerificationCodeTagWithExcludes(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -722,9 +723,9 @@ func TestParser2_2CanParsePackageVerificationCodeTagWithExcludes(t *testing.T) {
func TestParser2_2CanParsePackageVerificationCodeTagWithoutExcludes(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -745,9 +746,9 @@ func TestParser2_2CanParsePackageVerificationCodeTagWithoutExcludes(t *testing.T
func TestParser2_2PackageExternalRefPointerChangesAfterTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -790,9 +791,9 @@ func TestParser2_2PackageExternalRefPointerChangesAfterTags(t *testing.T) {
func TestParser2_2PackageCreatesRelationshipInDocument(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -810,9 +811,9 @@ func TestParser2_2PackageCreatesRelationshipInDocument(t *testing.T) {
func TestParser2_2PackageCreatesAnnotationInDocument(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -830,9 +831,9 @@ func TestParser2_2PackageCreatesAnnotationInDocument(t *testing.T) {
func TestParser2_2PackageUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: "p1", PackageSPDXIdentifier: "p1"},
+ pkg: &v2_2.Package{PackageName: "p1", PackageSPDXIdentifier: "p1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -844,9 +845,9 @@ func TestParser2_2PackageUnknownTagFails(t *testing.T) {
func TestParser2_2FailsIfInvalidSPDXIDInPackageSection(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -863,9 +864,9 @@ func TestParser2_2FailsIfInvalidSPDXIDInPackageSection(t *testing.T) {
func TestParser2_2FailsIfInvalidPackageSupplierFormat(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -882,9 +883,9 @@ func TestParser2_2FailsIfInvalidPackageSupplierFormat(t *testing.T) {
func TestParser2_2FailsIfUnknownPackageSupplierType(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -901,9 +902,9 @@ func TestParser2_2FailsIfUnknownPackageSupplierType(t *testing.T) {
func TestParser2_2FailsIfInvalidPackageOriginatorFormat(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -920,9 +921,9 @@ func TestParser2_2FailsIfInvalidPackageOriginatorFormat(t *testing.T) {
func TestParser2_2FailsIfUnknownPackageOriginatorType(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -939,9 +940,9 @@ func TestParser2_2FailsIfUnknownPackageOriginatorType(t *testing.T) {
func TestParser2_2SetsFilesAnalyzedTagsCorrectly(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -964,9 +965,9 @@ func TestParser2_2SetsFilesAnalyzedTagsCorrectly(t *testing.T) {
func TestParser2_2FailsIfInvalidPackageChecksumFormat(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -983,9 +984,9 @@ func TestParser2_2FailsIfInvalidPackageChecksumFormat(t *testing.T) {
func TestParser2_2FailsIfInvalidPackageChecksumType(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -1002,9 +1003,9 @@ func TestParser2_2FailsIfInvalidPackageChecksumType(t *testing.T) {
func TestParser2_2FailsIfInvalidExternalRefFormat(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -1021,9 +1022,9 @@ func TestParser2_2FailsIfInvalidExternalRefFormat(t *testing.T) {
func TestParser2_2FailsIfExternalRefCommentBeforeExternalRef(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{},
+ pkg: &v2_2.Package{},
}
// start with Package Name
@@ -1107,9 +1108,9 @@ func TestParser2_2PackageWithoutSpdxIdentifierThrowsError(t *testing.T) {
// More than one package, the previous package doesn't contain an SPDX ID
pkgOldName := "p1"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psPackage2_2,
- pkg: &spdx.Package2_2{PackageName: pkgOldName},
+ pkg: &v2_2.Package{PackageName: pkgOldName},
}
pkgOld := parser.pkg
parser.doc.Packages = append(parser.doc.Packages, pkgOld)
diff --git a/tvloader/parser2v2/parse_relationship_test.go b/tvloader/parser2v2/parse_relationship_test.go
index 0e6c013..48285fc 100644
--- a/tvloader/parser2v2/parse_relationship_test.go
+++ b/tvloader/parser2v2/parse_relationship_test.go
@@ -4,13 +4,13 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Relationship section tests =====
func TestParser2_2FailsIfRelationshipNotSet(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePairForRelationship2_2("Relationship", "SPDXRef-A CONTAINS SPDXRef-B")
@@ -21,7 +21,7 @@ func TestParser2_2FailsIfRelationshipNotSet(t *testing.T) {
func TestParser2_2FailsIfRelationshipCommentWithoutRelationship(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
err := parser.parsePair2_2("RelationshipComment", "comment whatever")
@@ -32,7 +32,7 @@ func TestParser2_2FailsIfRelationshipCommentWithoutRelationship(t *testing.T) {
func TestParser2_2CanParseRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -64,7 +64,7 @@ func TestParser2_2CanParseRelationshipTags(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsNoValueFail(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -78,7 +78,7 @@ func TestParser2_2InvalidRelationshipTagsNoValueFail(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsOneValueFail(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -92,7 +92,7 @@ func TestParser2_2InvalidRelationshipTagsOneValueFail(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsTwoValuesFail(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -106,7 +106,7 @@ func TestParser2_2InvalidRelationshipTagsTwoValuesFail(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsThreeValuesSucceed(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -120,7 +120,7 @@ func TestParser2_2InvalidRelationshipTagsThreeValuesSucceed(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsFourValuesFail(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -134,7 +134,7 @@ func TestParser2_2InvalidRelationshipTagsFourValuesFail(t *testing.T) {
func TestParser2_2InvalidRelationshipTagsInvalidRefIDs(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -154,7 +154,7 @@ func TestParser2_2InvalidRelationshipTagsInvalidRefIDs(t *testing.T) {
func TestParser2_2SpecialValuesValidForRightSideOfRelationship(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
@@ -185,7 +185,7 @@ func TestParser2_2SpecialValuesValidForRightSideOfRelationship(t *testing.T) {
func TestParser2_2FailsToParseUnknownTagInRelationshipSection(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
}
diff --git a/tvloader/parser2v2/parse_review.go b/tvloader/parser2v2/parse_review.go
index 065d889..09691c8 100644
--- a/tvloader/parser2v2/parse_review.go
+++ b/tvloader/parser2v2/parse_review.go
@@ -5,14 +5,14 @@ package parser2v2
import (
"fmt"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromReview2_2(tag string, value string) error {
switch tag {
// tag for creating new review section
case "Reviewer":
- parser.rev = &spdx.Review2_2{}
+ parser.rev = &v2_2.Review{}
parser.doc.Reviews = append(parser.doc.Reviews, parser.rev)
subkey, subvalue, err := extractSubs(value)
if err != nil {
@@ -37,14 +37,14 @@ func (parser *tvParser2_2) parsePairFromReview2_2(tag string, value string) erro
parser.rev.ReviewComment = value
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
diff --git a/tvloader/parser2v2/parse_review_test.go b/tvloader/parser2v2/parse_review_test.go
index de73ede..f93afbf 100644
--- a/tvloader/parser2v2/parse_review_test.go
+++ b/tvloader/parser2v2/parse_review_test.go
@@ -4,7 +4,7 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser review section state change tests =====
@@ -12,15 +12,15 @@ func TestParser2_2ReviewStartsNewReviewAfterParsingReviewerTag(t *testing.T) {
// create the first review
rev1 := "John Doe"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{
+ rev: &v2_2.Review{
Reviewer: rev1,
ReviewerType: "Person",
},
@@ -82,15 +82,15 @@ func TestParser2_2ReviewStartsNewReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2ReviewStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{
+ rev: &v2_2.Review{
Reviewer: "Jane Doe",
ReviewerType: "Person",
},
@@ -129,15 +129,15 @@ func TestParser2_2ReviewStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2ReviewStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{
+ rev: &v2_2.Review{
Reviewer: "Jane Doe",
ReviewerType: "Person",
},
@@ -198,15 +198,15 @@ func TestParser2_2ReviewStaysAfterParsingAnnotationTags(t *testing.T) {
func TestParser2_2ReviewFailsAfterParsingOtherSectionTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -235,15 +235,15 @@ func TestParser2_2ReviewFailsAfterParsingOtherSectionTags(t *testing.T) {
// ===== Review data section tests =====
func TestParser2_2CanParseReviewTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -274,15 +274,15 @@ func TestParser2_2CanParseReviewTags(t *testing.T) {
func TestParser2_2CanParseReviewerPersonTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -304,15 +304,15 @@ func TestParser2_2CanParseReviewerPersonTag(t *testing.T) {
func TestParser2_2CanParseReviewerOrganizationTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -334,15 +334,15 @@ func TestParser2_2CanParseReviewerOrganizationTag(t *testing.T) {
func TestParser2_2CanParseReviewerToolTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -364,9 +364,9 @@ func TestParser2_2CanParseReviewerToolTag(t *testing.T) {
func TestParser2_2FailsIfReviewerInvalidFormat(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Reviews = append(parser.doc.Reviews, parser.rev)
@@ -378,9 +378,9 @@ func TestParser2_2FailsIfReviewerInvalidFormat(t *testing.T) {
func TestParser2_2FailsIfReviewerUnknownType(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Reviews = append(parser.doc.Reviews, parser.rev)
@@ -392,15 +392,15 @@ func TestParser2_2FailsIfReviewerUnknownType(t *testing.T) {
func TestParser2_2ReviewUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psReview2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
- otherLic: &spdx.OtherLicense2_2{
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1"},
+ otherLic: &v2_2.OtherLicense{
LicenseIdentifier: "LicenseRef-Lic11",
LicenseName: "License 11",
},
- rev: &spdx.Review2_2{},
+ rev: &v2_2.Review{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
diff --git a/tvloader/parser2v2/parse_snippet.go b/tvloader/parser2v2/parse_snippet.go
index d3bac47..5b4f41a 100644
--- a/tvloader/parser2v2/parse_snippet.go
+++ b/tvloader/parser2v2/parse_snippet.go
@@ -6,7 +6,8 @@ import (
"fmt"
"strconv"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) error {
@@ -17,7 +18,7 @@ func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) err
if parser.file != nil && parser.file.FileSPDXIdentifier == nullSpdxElementId2_2 {
return fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName)
}
- parser.snippet = &spdx.Snippet2_2{}
+ parser.snippet = &v2_2.Snippet{}
eID, err := extractElementID(value)
if err != nil {
return err
@@ -25,7 +26,7 @@ func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) err
// FIXME: how should we handle where not associated with current file?
if parser.file != nil {
if parser.file.Snippets == nil {
- parser.file.Snippets = map[spdx.ElementID]*spdx.Snippet2_2{}
+ parser.file.Snippets = map[common.ElementID]*v2_2.Snippet{}
}
parser.file.Snippets[eID] = parser.snippet
}
@@ -67,9 +68,9 @@ func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) err
}
if parser.snippet.Ranges == nil {
- parser.snippet.Ranges = []spdx.SnippetRange{}
+ parser.snippet.Ranges = []common.SnippetRange{}
}
- byteRange := spdx.SnippetRange{StartPointer: spdx.SnippetRangePointer{Offset: bIntStart}, EndPointer: spdx.SnippetRangePointer{Offset: bIntEnd}}
+ byteRange := common.SnippetRange{StartPointer: common.SnippetRangePointer{Offset: bIntStart}, EndPointer: common.SnippetRangePointer{Offset: bIntEnd}}
parser.snippet.Ranges = append(parser.snippet.Ranges, byteRange)
case "SnippetLineRange":
lineStart, lineEnd, err := extractSubs(value)
@@ -86,9 +87,9 @@ func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) err
}
if parser.snippet.Ranges == nil {
- parser.snippet.Ranges = []spdx.SnippetRange{}
+ parser.snippet.Ranges = []common.SnippetRange{}
}
- lineRange := spdx.SnippetRange{StartPointer: spdx.SnippetRangePointer{LineNumber: lInttStart}, EndPointer: spdx.SnippetRangePointer{LineNumber: lInttEnd}}
+ lineRange := common.SnippetRange{StartPointer: common.SnippetRangePointer{LineNumber: lInttStart}, EndPointer: common.SnippetRangePointer{LineNumber: lInttEnd}}
parser.snippet.Ranges = append(parser.snippet.Ranges, lineRange)
case "SnippetLicenseConcluded":
parser.snippet.SnippetLicenseConcluded = value
@@ -106,14 +107,14 @@ func (parser *tvParser2_2) parsePairFromSnippet2_2(tag string, value string) err
parser.snippet.SnippetAttributionTexts = append(parser.snippet.SnippetAttributionTexts, value)
// for relationship tags, pass along but don't change state
case "Relationship":
- parser.rln = &spdx.Relationship2_2{}
+ parser.rln = &v2_2.Relationship{}
parser.doc.Relationships = append(parser.doc.Relationships, parser.rln)
return parser.parsePairForRelationship2_2(tag, value)
case "RelationshipComment":
return parser.parsePairForRelationship2_2(tag, value)
// for annotation tags, pass along but don't change state
case "Annotator":
- parser.ann = &spdx.Annotation2_2{}
+ parser.ann = &v2_2.Annotation{}
parser.doc.Annotations = append(parser.doc.Annotations, parser.ann)
return parser.parsePairForAnnotation2_2(tag, value)
case "AnnotationDate":
diff --git a/tvloader/parser2v2/parse_snippet_test.go b/tvloader/parser2v2/parse_snippet_test.go
index 545595a..1d6ddb2 100644
--- a/tvloader/parser2v2/parse_snippet_test.go
+++ b/tvloader/parser2v2/parse_snippet_test.go
@@ -4,19 +4,20 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
// ===== Parser snippet section state change tests =====
func TestParser2_2SnippetStartsNewSnippetAfterParsingSnippetSPDXIDTag(t *testing.T) {
// create the first snippet
- sid1 := spdx.ElementID("s1")
+ sid1 := common.ElementID("s1")
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: sid1},
+ pkg: &v2_2.Package{PackageName: "test", PackageSPDXIdentifier: "test", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: sid1},
}
s1 := parser.snippet
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
@@ -71,11 +72,11 @@ func TestParser2_2SnippetStartsNewSnippetAfterParsingSnippetSPDXIDTag(t *testing
func TestParser2_2SnippetStartsNewPackageAfterParsingPackageNameTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
p1 := parser.pkg
f1 := parser.file
@@ -146,11 +147,11 @@ func TestParser2_2SnippetStartsNewPackageAfterParsingPackageNameTag(t *testing.T
func TestParser2_2SnippetMovesToFileAfterParsingFileNameTag(t *testing.T) {
f1Name := "f1.txt"
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
p1 := parser.pkg
f1 := parser.file
@@ -198,11 +199,11 @@ func TestParser2_2SnippetMovesToFileAfterParsingFileNameTag(t *testing.T) {
func TestParser2_2SnippetMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -219,11 +220,11 @@ func TestParser2_2SnippetMovesToOtherLicenseAfterParsingLicenseIDTag(t *testing.
func TestParser2_2SnippetMovesToReviewAfterParsingReviewerTag(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -240,11 +241,11 @@ func TestParser2_2SnippetMovesToReviewAfterParsingReviewerTag(t *testing.T) {
func TestParser2_2SnippetStaysAfterParsingRelationshipTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -279,11 +280,11 @@ func TestParser2_2SnippetStaysAfterParsingRelationshipTags(t *testing.T) {
func TestParser2_2SnippetStaysAfterParsingAnnotationTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -341,11 +342,11 @@ func TestParser2_2SnippetStaysAfterParsingAnnotationTags(t *testing.T) {
// ===== Snippet data section tests =====
func TestParser2_2CanParseSnippetTags(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -364,7 +365,7 @@ func TestParser2_2CanParseSnippetTags(t *testing.T) {
if err != nil {
t.Errorf("expected nil error, got %v", err)
}
- wantDeID := spdx.DocElementID{DocumentRefID: "", ElementRefID: spdx.ElementID("f1")}
+ wantDeID := common.DocElementID{DocumentRefID: "", ElementRefID: common.ElementID("f1")}
if parser.snippet.SnippetFromFileSPDXIdentifier != wantDeID.ElementRefID {
t.Errorf("got %v for SnippetFromFileSPDXIdentifier", parser.snippet.SnippetFromFileSPDXIdentifier)
}
@@ -497,11 +498,11 @@ func TestParser2_2CanParseSnippetTags(t *testing.T) {
func TestParser2_2SnippetUnknownTagFails(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{SnippetSPDXIdentifier: "s1"},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{SnippetSPDXIdentifier: "s1"},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -514,11 +515,11 @@ func TestParser2_2SnippetUnknownTagFails(t *testing.T) {
func TestParser2_2FailsForInvalidSnippetSPDXID(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -532,11 +533,11 @@ func TestParser2_2FailsForInvalidSnippetSPDXID(t *testing.T) {
func TestParser2_2FailsForInvalidSnippetFromFileSPDXID(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -555,11 +556,11 @@ func TestParser2_2FailsForInvalidSnippetFromFileSPDXID(t *testing.T) {
func TestParser2_2FailsForInvalidSnippetByteValues(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -586,11 +587,11 @@ func TestParser2_2FailsForInvalidSnippetByteValues(t *testing.T) {
func TestParser2_2FailsForInvalidSnippetLineValues(t *testing.T) {
parser := tvParser2_2{
- doc: &spdx.Document2_2{Packages: []*spdx.Package2_2{}},
+ doc: &v2_2.Document{Packages: []*v2_2.Package{}},
st: psSnippet2_2,
- pkg: &spdx.Package2_2{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*spdx.File2_2{}},
- file: &spdx.File2_2{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[spdx.ElementID]*spdx.Snippet2_2{}},
- snippet: &spdx.Snippet2_2{},
+ pkg: &v2_2.Package{PackageName: "package1", PackageSPDXIdentifier: "package1", Files: []*v2_2.File{}},
+ file: &v2_2.File{FileName: "f1.txt", FileSPDXIdentifier: "f1", Snippets: map[common.ElementID]*v2_2.Snippet{}},
+ snippet: &v2_2.Snippet{},
}
parser.doc.Packages = append(parser.doc.Packages, parser.pkg)
parser.pkg.Files = append(parser.pkg.Files, parser.file)
@@ -620,11 +621,11 @@ func TestParser2_2FilesWithoutSpdxIdThrowErrorWithSnippets(t *testing.T) {
// Last unpackaged file before the snippet starts
// Last file of a package and New package starts
fileName := "f2.txt"
- sid1 := spdx.ElementID("s1")
+ sid1 := common.ElementID("s1")
parser2 := tvParser2_2{
- doc: &spdx.Document2_2{},
+ doc: &v2_2.Document{},
st: psCreationInfo2_2,
- file: &spdx.File2_2{FileName: fileName},
+ file: &v2_2.File{FileName: fileName},
}
err := parser2.parsePair2_2("SnippetSPDXID", string(sid1))
if err == nil {
diff --git a/tvloader/parser2v2/parser.go b/tvloader/parser2v2/parser.go
index 1d9f8e9..72f67be 100644
--- a/tvloader/parser2v2/parser.go
+++ b/tvloader/parser2v2/parser.go
@@ -6,13 +6,14 @@ package parser2v2
import (
"fmt"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
"github.com/spdx/tools-golang/tvloader/reader"
)
// ParseTagValues takes a list of (tag, value) pairs, parses it and returns
// a pointer to a parsed SPDX Document.
-func ParseTagValues(tvs []reader.TagValuePair) (*spdx.Document2_2, error) {
+func ParseTagValues(tvs []reader.TagValuePair) (*v2_2.Document, error) {
parser := tvParser2_2{}
for _, tv := range tvs {
err := parser.parsePair2_2(tv.Tag, tv.Value)
@@ -58,7 +59,7 @@ func (parser *tvParser2_2) parsePairFromStart2_2(tag string, value string) error
// create an SPDX Document data struct if we don't have one already
if parser.doc == nil {
- parser.doc = &spdx.Document2_2{ExternalDocumentReferences: []spdx.ExternalDocumentRef2_2{}}
+ parser.doc = &v2_2.Document{ExternalDocumentReferences: []v2_2.ExternalDocumentRef{}}
}
switch tag {
@@ -83,10 +84,10 @@ func (parser *tvParser2_2) parsePairFromStart2_2(tag string, value string) error
if err != nil {
return err
}
- edr := spdx.ExternalDocumentRef2_2{
+ edr := v2_2.ExternalDocumentRef{
DocumentRefID: documentRefID,
URI: uri,
- Checksum: spdx.Checksum{Algorithm: spdx.ChecksumAlgorithm(alg), Value: checksum},
+ Checksum: common.Checksum{Algorithm: common.ChecksumAlgorithm(alg), Value: checksum},
}
parser.doc.ExternalDocumentReferences = append(parser.doc.ExternalDocumentReferences, edr)
default:
diff --git a/tvloader/parser2v2/types.go b/tvloader/parser2v2/types.go
index 1cdbcef..52d6a9a 100644
--- a/tvloader/parser2v2/types.go
+++ b/tvloader/parser2v2/types.go
@@ -3,26 +3,27 @@
package parser2v2
import (
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
+ "github.com/spdx/tools-golang/spdx/v2_2"
)
type tvParser2_2 struct {
// document into which data is being parsed
- doc *spdx.Document2_2
+ doc *v2_2.Document
// current parser state
st tvParserState2_2
// current SPDX item being filled in, if any
- pkg *spdx.Package2_2
- pkgExtRef *spdx.PackageExternalReference2_2
- file *spdx.File2_2
- fileAOP *spdx.ArtifactOfProject2_2
- snippet *spdx.Snippet2_2
- otherLic *spdx.OtherLicense2_2
- rln *spdx.Relationship2_2
- ann *spdx.Annotation2_2
- rev *spdx.Review2_2
+ pkg *v2_2.Package
+ pkgExtRef *v2_2.PackageExternalReference
+ file *v2_2.File
+ fileAOP *v2_2.ArtifactOfProject
+ snippet *v2_2.Snippet
+ otherLic *v2_2.OtherLicense
+ rln *v2_2.Relationship
+ ann *v2_2.Annotation
+ rev *v2_2.Review
// don't need creation info pointer b/c only one,
// and we can get to it via doc.CreationInfo
}
@@ -53,4 +54,4 @@ const (
psReview2_2
)
-const nullSpdxElementId2_2 = spdx.ElementID("")
+const nullSpdxElementId2_2 = common.ElementID("")
diff --git a/tvloader/parser2v2/util.go b/tvloader/parser2v2/util.go
index 6676846..5e84433 100644
--- a/tvloader/parser2v2/util.go
+++ b/tvloader/parser2v2/util.go
@@ -6,7 +6,7 @@ import (
"fmt"
"strings"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
)
// used to extract key / value from embedded substrings
@@ -26,7 +26,7 @@ func extractSubs(value string) (string, string, error) {
// used to extract DocumentRef and SPDXRef values from an SPDX Identifier
// which can point either to this document or to a different one
-func extractDocElementID(value string) (spdx.DocElementID, error) {
+func extractDocElementID(value string) (common.DocElementID, error) {
docRefID := ""
idStr := value
@@ -36,16 +36,16 @@ func extractDocElementID(value string) (spdx.DocElementID, error) {
strs := strings.Split(idStr, ":")
// should be exactly two, part before and part after
if len(strs) < 2 {
- return spdx.DocElementID{}, fmt.Errorf("no colon found although DocumentRef- prefix present")
+ return common.DocElementID{}, fmt.Errorf("no colon found although DocumentRef- prefix present")
}
if len(strs) > 2 {
- return spdx.DocElementID{}, fmt.Errorf("more than one colon found")
+ return common.DocElementID{}, fmt.Errorf("more than one colon found")
}
// trim the prefix and confirm non-empty
docRefID = strings.TrimPrefix(strs[0], "DocumentRef-")
if docRefID == "" {
- return spdx.DocElementID{}, fmt.Errorf("document identifier has nothing after prefix")
+ return common.DocElementID{}, fmt.Errorf("document identifier has nothing after prefix")
}
// and use remainder for element ID parsing
idStr = strs[1]
@@ -53,24 +53,24 @@ func extractDocElementID(value string) (spdx.DocElementID, error) {
// check prefix to confirm it's got the right prefix for element IDs
if !strings.HasPrefix(idStr, "SPDXRef-") {
- return spdx.DocElementID{}, fmt.Errorf("missing SPDXRef- prefix for element identifier")
+ return common.DocElementID{}, fmt.Errorf("missing SPDXRef- prefix for element identifier")
}
// make sure no colons are present
if strings.Contains(idStr, ":") {
// we know this means there was no DocumentRef- prefix, because
// we would have handled multiple colons above if it was
- return spdx.DocElementID{}, fmt.Errorf("invalid colon in element identifier")
+ return common.DocElementID{}, fmt.Errorf("invalid colon in element identifier")
}
// trim the prefix and confirm non-empty
eltRefID := strings.TrimPrefix(idStr, "SPDXRef-")
if eltRefID == "" {
- return spdx.DocElementID{}, fmt.Errorf("element identifier has nothing after prefix")
+ return common.DocElementID{}, fmt.Errorf("element identifier has nothing after prefix")
}
// we're good
- return spdx.DocElementID{DocumentRefID: docRefID, ElementRefID: spdx.ElementID(eltRefID)}, nil
+ return common.DocElementID{DocumentRefID: docRefID, ElementRefID: common.ElementID(eltRefID)}, nil
}
// used to extract SPDXRef values from an SPDX Identifier, OR "special" strings
@@ -79,11 +79,11 @@ func extractDocElementID(value string) (spdx.DocElementID, error) {
// "NONE" and "NOASSERTION" are permitted. If the value does not match one of
// the specified permitted values, it will fall back to the ordinary
// DocElementID extractor.
-func extractDocElementSpecial(value string, permittedSpecial []string) (spdx.DocElementID, error) {
+func extractDocElementSpecial(value string, permittedSpecial []string) (common.DocElementID, error) {
// check value against special set first
for _, sp := range permittedSpecial {
if sp == value {
- return spdx.DocElementID{SpecialID: sp}, nil
+ return common.DocElementID{SpecialID: sp}, nil
}
}
// not found, fall back to regular search
@@ -93,23 +93,23 @@ func extractDocElementSpecial(value string, permittedSpecial []string) (spdx.Doc
// used to extract SPDXRef values only from an SPDX Identifier which can point
// to this document only. Use extractDocElementID for parsing IDs that can
// refer either to this document or a different one.
-func extractElementID(value string) (spdx.ElementID, error) {
+func extractElementID(value string) (common.ElementID, error) {
// check prefix to confirm it's got the right prefix for element IDs
if !strings.HasPrefix(value, "SPDXRef-") {
- return spdx.ElementID(""), fmt.Errorf("missing SPDXRef- prefix for element identifier")
+ return common.ElementID(""), fmt.Errorf("missing SPDXRef- prefix for element identifier")
}
// make sure no colons are present
if strings.Contains(value, ":") {
- return spdx.ElementID(""), fmt.Errorf("invalid colon in element identifier")
+ return common.ElementID(""), fmt.Errorf("invalid colon in element identifier")
}
// trim the prefix and confirm non-empty
eltRefID := strings.TrimPrefix(value, "SPDXRef-")
if eltRefID == "" {
- return spdx.ElementID(""), fmt.Errorf("element identifier has nothing after prefix")
+ return common.ElementID(""), fmt.Errorf("element identifier has nothing after prefix")
}
// we're good
- return spdx.ElementID(eltRefID), nil
+ return common.ElementID(eltRefID), nil
}
diff --git a/tvloader/parser2v2/util_test.go b/tvloader/parser2v2/util_test.go
index e2f75d7..80050f3 100644
--- a/tvloader/parser2v2/util_test.go
+++ b/tvloader/parser2v2/util_test.go
@@ -4,7 +4,7 @@ package parser2v2
import (
"testing"
- "github.com/spdx/tools-golang/spdx"
+ "github.com/spdx/tools-golang/spdx/common"
)
// ===== Helper function tests =====
@@ -65,7 +65,7 @@ func helperForExtractDocElementID(t *testing.T, tst string, wantErr bool, wantDo
t.Errorf("testing %v: want %v for DocumentRefID, got %v", tst, wantDoc, deID.DocumentRefID)
}
}
- if deID.ElementRefID != spdx.ElementID(wantElt) {
+ if deID.ElementRefID != common.ElementID(wantElt) {
if wantElt == "" {
t.Errorf("testing %v: want empty string for ElementRefID, got %v", tst, deID.ElementRefID)
} else {
@@ -103,7 +103,7 @@ func helperForExtractDocElementSpecial(t *testing.T, permittedSpecial []string,
t.Errorf("testing %v: want %v for DocumentRefID, got %v", tst, wantDoc, deID.DocumentRefID)
}
}
- if deID.ElementRefID != spdx.ElementID(wantElt) {
+ if deID.ElementRefID != common.ElementID(wantElt) {
if wantElt == "" {
t.Errorf("testing %v: want empty string for ElementRefID, got %v", tst, deID.ElementRefID)
} else {
@@ -146,7 +146,7 @@ func helperForExtractElementID(t *testing.T, tst string, wantErr bool, wantElt s
if err == nil && wantErr == true {
t.Errorf("testing %v: expected non-nil error, got nil", tst)
}
- if eID != spdx.ElementID(wantElt) {
+ if eID != common.ElementID(wantElt) {
if wantElt == "" {
t.Errorf("testing %v: want emptyString for ElementRefID, got %v", tst, eID)
} else {