Skip to content

Commit

Permalink
change so v2_2 reading output will be the same
Browse files Browse the repository at this point in the history
Signed-off-by: Brandon Lum <lumjjb@gmail.com>
  • Loading branch information
lumjjb committed Mar 24, 2023
1 parent 35c9ef7 commit 1fdd54d
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 11 deletions.
8 changes: 3 additions & 5 deletions spdx/v2/common/external.go
Expand Up @@ -16,17 +16,15 @@ const (

// F.3 Package-Manager types
CategoryPackageManager string = "PACKAGE-MANAGER"
CategoryPackageManagerJson string = "PACKAGE_MANAGER"
TypePackageManagerMavenCentral string = "maven-central"
TypePackageManagerNpm string = "npm"
TypePackageManagerNuGet string = "nuget"
TypePackageManagerBower string = "bower"
TypePackageManagerPURL string = "purl"
// F.4 Persistent-Id types
CategoryPersistentId string = "PERSISTENT-ID"
CategoryPersistentIdJson string = "PERSISTENT_ID"
TypePersistentIdSwh string = "swh"
TypePersistentIdGitoid string = "gitoid"
CategoryPersistentId string = "PERSISTENT-ID"
TypePersistentIdSwh string = "swh"
TypePersistentIdGitoid string = "gitoid"

// 11.1 Relationship field types
TypeRelationshipDescribe string = "DESCRIBES"
Expand Down
2 changes: 1 addition & 1 deletion spdx/v2/v2_2/example/example.go
Expand Up @@ -203,7 +203,7 @@ var example = spdx.Document{
PackageDownloadLocation: "https://search.maven.org/remotecontent?filepath=org/apache/jena/apache-jena/3.12.0/apache-jena-3.12.0.tar.gz",
PackageExternalReferences: []*spdx.PackageExternalReference{
{
Category: "PACKAGE_MANAGER",
Category: "PACKAGE-MANAGER",
RefType: "purl",
Locator: "pkg:maven/org.apache.jena/apache-jena@3.12.0",
},
Expand Down
8 changes: 4 additions & 4 deletions spdx/v2/v2_2/json/json_test.go
Expand Up @@ -279,7 +279,7 @@ func Test_JsonEnums(t *testing.T) {
PackageVersion: "1.1.1",
PackageExternalReferences: []*spdx.PackageExternalReference{
{
Category: common.CategoryPackageManagerJson,
Category: common.CategoryPackageManager,
RefType: common.TypePackageManagerPURL,
Locator: "pkg:somepkg/ns/name1",
},
Expand All @@ -291,7 +291,7 @@ func Test_JsonEnums(t *testing.T) {
PackageVersion: "2.2.2",
PackageExternalReferences: []*spdx.PackageExternalReference{
{
Category: common.CategoryPackageManagerJson,
Category: common.CategoryPackageManager,
RefType: common.TypePackageManagerPURL,
Locator: "pkg:somepkg/ns/name2",
},
Expand All @@ -303,7 +303,7 @@ func Test_JsonEnums(t *testing.T) {
PackageVersion: "3.3.3",
PackageExternalReferences: []*spdx.PackageExternalReference{
{
Category: common.CategoryPersistentIdJson,
Category: common.CategoryPersistentId,
RefType: common.TypePersistentIdGitoid,
Locator: "gitoid:blob:sha1:261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64",
},
Expand All @@ -315,7 +315,7 @@ func Test_JsonEnums(t *testing.T) {
PackageVersion: "4.4.4",
PackageExternalReferences: []*spdx.PackageExternalReference{
{
Category: common.CategoryPersistentIdJson,
Category: common.CategoryPersistentId,
RefType: common.TypePersistentIdGitoid,
Locator: "gitoid:blob:sha1:261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64",
},
Expand Down
4 changes: 3 additions & 1 deletion spdx/v2/v2_2/package.go
Expand Up @@ -176,13 +176,15 @@ func (r *PackageExternalReference) UnmarshalJSON(b []byte) error {
}

*r = PackageExternalReference(rr)
r.Category = strings.ReplaceAll(r.Category, "-", "_")
r.Category = strings.ReplaceAll(r.Category, "_", "-")

return nil
}

var _ json.Marshaler = (*PackageExternalReference)(nil)

// We output as the JSON type enums since in v2.2.0 the JSON schema
// spec only had enums with _ (e.g. PACKAGE_MANAGER)
func (r *PackageExternalReference) MarshalJSON() ([]byte, error) {
type ref PackageExternalReference
var rr ref
Expand Down

0 comments on commit 1fdd54d

Please sign in to comment.