diff options
Diffstat (limited to 'tvloader/parser2v1/parse_other_license_test.go')
-rw-r--r-- | tvloader/parser2v1/parse_other_license_test.go | 75 |
1 files changed, 38 insertions, 37 deletions
diff --git a/tvloader/parser2v1/parse_other_license_test.go b/tvloader/parser2v1/parse_other_license_test.go index 7d004de..d97eb1c 100644 --- a/tvloader/parser2v1/parse_other_license_test.go +++ b/tvloader/parser2v1/parse_other_license_test.go @@ -14,18 +14,18 @@ func TestParser2_1OLStartsNewOtherLicenseAfterParsingLicenseIDTag(t *testing.T) olname1 := "License 11" parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, otherLic: &spdx.OtherLicense2_1{ LicenseIdentifier: olid1, LicenseName: olname1, }, } olic1 := parser.otherLic - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) // the Document's OtherLicenses should have this one only @@ -90,13 +90,13 @@ func TestParser2_1OLStartsNewOtherLicenseAfterParsingLicenseIDTag(t *testing.T) func TestParser2_1OLMovesToReviewAfterParsingReviewerTag(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) err := parser.parsePair2_1("Reviewer", "Person: John Doe") @@ -110,20 +110,20 @@ func TestParser2_1OLMovesToReviewAfterParsingReviewerTag(t *testing.T) { func TestParser2_1OtherLicenseStaysAfterParsingRelationshipTags(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, otherLic: &spdx.OtherLicense2_1{ LicenseIdentifier: "LicenseRef-whatever", LicenseName: "the whatever license", }, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) - err := parser.parsePair2_1("Relationship", "blah CONTAINS blah-else") + err := parser.parsePair2_1("Relationship", "SPDXRef-blah CONTAINS SPDXRef-blah-else") if err != nil { t.Errorf("got error when calling parsePair2_1: %v", err) } @@ -135,7 +135,8 @@ func TestParser2_1OtherLicenseStaysAfterParsingRelationshipTags(t *testing.T) { if len(parser.doc.Relationships) != 1 { t.Fatalf("expected doc.Relationships to have len 1, got %d", len(parser.doc.Relationships)) } - if parser.doc.Relationships[0].RefA != "blah" { + deID := parser.doc.Relationships[0].RefA + if deID.DocumentRefID != "" || deID.ElementRefID != "blah" { t.Errorf("expected RefA to be %s, got %s", "blah", parser.doc.Relationships[0].RefA) } @@ -151,17 +152,17 @@ func TestParser2_1OtherLicenseStaysAfterParsingRelationshipTags(t *testing.T) { func TestParser2_1OtherLicenseStaysAfterParsingAnnotationTags(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, otherLic: &spdx.OtherLicense2_1{ LicenseIdentifier: "LicenseRef-whatever", LicenseName: "the whatever license", }, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) err := parser.parsePair2_1("Annotator", "Person: John Doe ()") @@ -215,17 +216,17 @@ func TestParser2_1OtherLicenseStaysAfterParsingAnnotationTags(t *testing.T) { func TestParser2_1OLFailsAfterParsingOtherSectionTags(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, otherLic: &spdx.OtherLicense2_1{ LicenseIdentifier: "LicenseRef-Lic11", LicenseName: "License 11", }, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) // can't go back to old sections @@ -246,13 +247,13 @@ func TestParser2_1OLFailsAfterParsingOtherSectionTags(t *testing.T) { // ===== Other License data section tests ===== func TestParser2_1CanParseOtherLicenseTags(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) // License Identifier @@ -322,13 +323,13 @@ func TestParser2_1CanParseOtherLicenseTags(t *testing.T) { func TestParser2_1OLUnknownTagFails(t *testing.T) { parser := tvParser2_1{ - doc: &spdx.Document2_1{}, + doc: &spdx.Document2_1{Packages: map[spdx.ElementID]*spdx.Package2_1{}}, st: psOtherLicense2_1, - pkg: &spdx.Package2_1{PackageName: "test"}, - file: &spdx.File2_1{FileName: "f1.txt"}, + pkg: &spdx.Package2_1{PackageName: "test", PackageSPDXIdentifier: "test", Files: map[spdx.ElementID]*spdx.File2_1{}}, + file: &spdx.File2_1{FileName: "f1.txt", FileSPDXIdentifier: "f1"}, } - parser.doc.Packages = append(parser.doc.Packages, parser.pkg) - parser.pkg.Files = append(parser.pkg.Files, parser.file) + parser.doc.Packages["test"] = parser.pkg + parser.pkg.Files["f1"] = parser.file parser.doc.OtherLicenses = append(parser.doc.OtherLicenses, parser.otherLic) err := parser.parsePairFromOtherLicense2_1("blah", "something") |