diff --git a/syft/cataloger/javascript/parse_package_json_test.go b/syft/cataloger/javascript/parse_package_json_test.go index 1bd604f8d..c16a69006 100644 --- a/syft/cataloger/javascript/parse_package_json_test.go +++ b/syft/cataloger/javascript/parse_package_json_test.go @@ -47,6 +47,23 @@ func TestParsePackageJSON(t *testing.T) { }, }, }, + { + Fixture: "test-fixtures/pkg-json/package-license-objects.json", + ExpectedPkg: pkg.Package{ + Name: "npm", + Version: "6.14.6", + Type: pkg.NpmPkg, + Licenses: []string{"MIT", "Apache-2.0"}, + Language: pkg.JavaScript, + MetadataType: pkg.NpmPackageJSONMetadataType, + Metadata: pkg.NpmPackageJSONMetadata{ + Author: "Isaac Z. Schlueter (http://blog.izs.me)", + Homepage: "https://docs.npmjs.com/", + URL: "https://github.com/npm/cli", + Licenses: []string{"MIT", "Apache-2.0"}, + }, + }, + }, { Fixture: "test-fixtures/pkg-json/package-nested-author.json", ExpectedPkg: pkg.Package{ diff --git a/syft/cataloger/javascript/test-fixtures/pkg-json/package-license-objects.json b/syft/cataloger/javascript/test-fixtures/pkg-json/package-license-objects.json new file mode 100644 index 000000000..605bc3ec9 --- /dev/null +++ b/syft/cataloger/javascript/test-fixtures/pkg-json/package-license-objects.json @@ -0,0 +1,26 @@ +{ + "version": "6.14.6", + "name": "npm", + "description": "a package manager for JavaScript", + "homepage": "https://docs.npmjs.com/", + "author": "Isaac Z. Schlueter (http://blog.izs.me)", + "repository": { + "type": "git", + "url": "https://github.com/npm/cli" + }, + "bugs": { + "url": "https://npm.community/c/bugs" + }, + "main": "./lib/npm.js", + "licenses": [ + { "type": "MIT", + "url": "https://www.opensource.org/licenses/mit-license.php" + }, + { "type": "Apache-2.0", + "url": "https://opensource.org/licenses/apache2.0.php" + } + ], + "engines": { + "node": "6 >=6.2.0 || 8 || >=9.3.0" + } +}