Skip to content

Commit 7d63942

Browse files
committed
tests
Signed-off-by: Jan Kowalleck <[email protected]>
1 parent 236b9a1 commit 7d63942

File tree

4 files changed

+13
-7
lines changed

4 files changed

+13
-7
lines changed

src/factories/fromNodePackageJson.node.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,13 @@ export class PackageUrlFactory extends PlainPackageUrlFactory<'npm'> {
148148
// nothing to base a checksum on
149149
qualifiers.delete(PurlQualifierNames.Checksum)
150150
}
151-
purl.qualifiers = qualifiers.size > 0
152-
? Object.fromEntries(qualifiers.entries())
153-
: undefined
151+
if (qualifiers.size > 0) {
152+
purl.qualifiers = Object.fromEntries(qualifiers.entries())
153+
/* @ts-ignore TS2322 */
154+
purl.qualifiers.__proto__ = null
155+
} else {
156+
purl.qualifiers = undefined
157+
}
154158

155159
return purl
156160
}

src/factories/packageUrl.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ export class PackageUrlFactory<PurlType extends PackageURL['type'] = PackageURL[
3636
/* eslint-disable-next-line @typescript-eslint/no-inferrable-types -- docs */
3737
makeFromComponent (component: Component, sort: boolean = false): PackageURL | undefined {
3838
const qualifiers: PackageURL['qualifiers'] = {}
39+
/* @ts-ignore TS2322 */
40+
qualifiers.__proto__ = null
3941
let subpath: PackageURL['subpath'] = undefined
4042

4143
// sorting to allow reproducibility: use the last instance for a `extRef.type`, if multiples exist

tests/integration/Factories.FromNodePackageJson.PackageUrlFactory.test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ suite('integration: Factories.FromNodePackageJson.PackageUrlFactory', () => {
251251
vcs_url: 'git+https://foo.bar/repo.git'
252252
}, undefined)
253253
// expect objet's keys in alphabetical oder, expect sorted hash list
254-
const expectedString = 'pkg:testing/name?checksum=blake3%3Aaa51dcd43d5c6c5203ee16906fd6b35db298b9b2e1de3fce81811d4806b76b7d%2Csha-256%3Ac3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2&vcs_url=git%2Bhttps%3A//foo.bar/repo.git'
254+
const expectedString = 'pkg:testing/name?checksum=blake3%3Aaa51dcd43d5c6c5203ee16906fd6b35db298b9b2e1de3fce81811d4806b76b7d%2Csha-256%3Ac3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2&vcs_url=git%2Bhttps%3A%2F%2Ffoo.bar%2Frepo.git'
255255

256256
const actual = sut.makeFromComponent(component, true)
257257

@@ -287,7 +287,7 @@ suite('integration: Factories.FromNodePackageJson.PackageUrlFactory', () => {
287287
download_url: 'https://foo.bar/download-2'
288288
}, undefined)
289289
// expect objet's keys in alphabetical oder, expect sorted hash list
290-
const expectedString = 'pkg:testing/name?download_url=https%3A//foo.bar/download-2'
290+
const expectedString = 'pkg:testing/name?download_url=https%3A%2F%2Ffoo.bar%2Fdownload-2'
291291

292292
const actual1 = sut.makeFromComponent(component1, true)
293293
const actual2 = sut.makeFromComponent(component2, true)

tests/integration/Factories.PackageUrlFactory.test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ suite('integration: Factories.PackageUrlFactory', () => {
174174
vcs_url: 'git+https://foo.bar/repo.git'
175175
}, undefined)
176176
// expect objet's keys in alphabetical oder, expect sorted hash list
177-
const expectedString = 'pkg:testing/name?checksum=blake3%3Aaa51dcd43d5c6c5203ee16906fd6b35db298b9b2e1de3fce81811d4806b76b7d%2Csha-256%3Ac3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2&download_url=https%3A//foo.bar/download&vcs_url=git%2Bhttps%3A//foo.bar/repo.git'
177+
const expectedString = 'pkg:testing/name?checksum=blake3%3Aaa51dcd43d5c6c5203ee16906fd6b35db298b9b2e1de3fce81811d4806b76b7d%2Csha-256%3Ac3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2&download_url=https%3A%2F%2Ffoo.bar%2Fdownload&vcs_url=git%2Bhttps%3A%2F%2Ffoo.bar%2Frepo.git'
178178

179179
const actual = sut.makeFromComponent(component, true)
180180

@@ -213,7 +213,7 @@ suite('integration: Factories.PackageUrlFactory', () => {
213213
vcs_url: 'git+https://foo.bar/repo.git'
214214
}, undefined)
215215
// expect objet's keys in alphabetical oder, expect sorted hash list
216-
const expectedString = 'pkg:testing/name?download_url=https%3A//foo.bar/download-2&vcs_url=git%2Bhttps%3A//foo.bar/repo.git'
216+
const expectedString = 'pkg:testing/name?download_url=https%3A%2F%2Ffoo.bar%2Fdownload-2&vcs_url=git%2Bhttps%3A%2F%2Ffoo.bar%2Frepo.git'
217217

218218
const actual1 = sut.makeFromComponent(component1, true)
219219
const actual2 = sut.makeFromComponent(component2, true)

0 commit comments

Comments
 (0)