Skip to content

Commit 87fb34a

Browse files
authored
Merge pull request #1101 from TG1999/fix_package_detail_view
Use for_purl instead of for_package_url in package detail view
2 parents 8b59296 + b9492dc commit 87fb34a

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

vulnerabilities/tests/test_view.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from vulnerabilities.models import Alias
1515
from vulnerabilities.models import Package
1616
from vulnerabilities.models import Vulnerability
17+
from vulnerabilities.views import PackageDetails
1718
from vulnerabilities.views import PackageSearch
1819

1920

@@ -34,6 +35,7 @@ def setUp(self):
3435
"pkg:nginx/[email protected]",
3536
"pkg:nginx/[email protected]",
3637
"pkg:nginx/[email protected]",
38+
"pkg:nginx/[email protected]?foo=bar",
3739
"pkg:pypi/foo@1",
3840
]
3941
self.packages = packages
@@ -55,9 +57,13 @@ def test_packages_search_view_paginator(self):
5557
def test_package_view(self):
5658
qs = PackageSearch().get_queryset(query="pkg:nginx/[email protected]?foo=bar")
5759
pkgs = list(qs)
58-
self.assertEqual(len(pkgs), 1)
60+
self.assertEqual(len(pkgs), 2)
5961
self.assertEqual(pkgs[0].purl, "pkg:nginx/[email protected]")
6062

63+
def test_package_detail_view(self):
64+
package = PackageDetails(kwargs={"purl": "pkg:nginx/[email protected]"}).get_object()
65+
assert package.purl == "pkg:nginx/[email protected]"
66+
6167
def test_package_view_with_purl_fragment(self):
6268
qs = PackageSearch().get_queryset(query="[email protected]")
6369
pkgs = list(qs)
@@ -82,6 +88,7 @@ def test_package_view_with_purl_fragment(self):
8288
"pkg:nginx/[email protected]",
8389
"pkg:nginx/[email protected]",
8490
"pkg:nginx/[email protected]",
91+
"pkg:nginx/[email protected]?foo=bar",
8592
]
8693

8794
def test_package_view_with_valid_purl_without_version(self):
@@ -102,6 +109,7 @@ def test_package_view_with_valid_purl_without_version(self):
102109
"pkg:nginx/[email protected]",
103110
"pkg:nginx/[email protected]",
104111
"pkg:nginx/[email protected]",
112+
"pkg:nginx/[email protected]?foo=bar",
105113
]
106114

107115
def test_package_view_with_valid_purl_and_incomplete_version(self):
@@ -121,6 +129,7 @@ def test_package_view_with_valid_purl_and_incomplete_version(self):
121129
"pkg:nginx/[email protected]",
122130
"pkg:nginx/[email protected]",
123131
"pkg:nginx/[email protected]",
132+
"pkg:nginx/[email protected]?foo=bar",
124133
]
125134

126135
def test_package_view_with_purl_type(self):

vulnerabilities/views.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ def get_object(self, queryset=None):
9191

9292
purl = self.kwargs.get(self.slug_url_kwarg)
9393
if purl:
94-
queryset = queryset.for_package_url(purl_str=purl, encode=False)
94+
queryset = queryset.for_purl(purl)
9595
else:
9696
cls = self.__class__.__name__
9797
raise AttributeError(

0 commit comments

Comments
 (0)