@@ -92,7 +92,6 @@ def test_retrieve_vulnerability_detail(self):
92
92
self .assertEqual (len (response .data ["weaknesses" ]), 1 )
93
93
self .assertEqual (len (response .data ["references" ]), 1 )
94
94
95
-
96
95
def test_filter_vulnerability_by_vulnerability_id (self ):
97
96
"""
98
97
Test filtering vulnerabilities by vulnerability_id.
@@ -233,22 +232,27 @@ def test_list_packages(self):
233
232
self .assertTrue (
234
233
all (vuln_id in response .data ["results" ]["vulnerabilities" ] for vuln_id in package_vulns )
235
234
)
235
+
236
236
def test_filter_packages_by_vulnerability_status (self ):
237
237
vulnerability = Vulnerability .objects .create (
238
238
vulnerability_id = "VCID-FILTER" , summary = "Test vulnerability for is_vulnerable filter"
239
239
)
240
240
self .package1 .affected_by_vulnerabilities .add (vulnerability )
241
241
url = reverse ("package-v2-list" )
242
- with self .assertNumQueries (20 ):
243
- response = self .client .get (url , {"is_vulnerable" : "true" }, format = "json" )
242
+ response = self .client .get (url , {"is_vulnerable" : "true" }, format = "json" )
244
243
self .assertEqual (response .status_code , status .HTTP_200_OK )
245
- self .assertEqual (len (response .data ["results" ]["packages" ]), 1 )
246
- self .
assertEqual (
response .
data [
"results" ][
"packages" ][
0 ][
"purl" ],
"pkg:pypi/[email protected] " )
247
- with self .assertNumQueries (20 ):
248
- response = self .client .get (url , {"is_vulnerable" : "false" }, format = "json" )
244
+ self .assertIn ("results" , response .data )
245
+ self .assertIn ("packages" , response .data ["results" ])
246
+ package_purls = [pkg ["purl" ] for pkg in response .data ["results" ]["packages" ]]
247
+ self .assertIn (self .package1 .package_url , package_purls )
248
+ self .assertNotIn (self .package2 .package_url , package_purls )
249
+ response = self .client .get (url , {"is_vulnerable" : "false" }, format = "json" )
249
250
self .assertEqual (response .status_code , status .HTTP_200_OK )
250
- self .assertEqual (len (response .data ["results" ]["packages" ]), 1 )
251
- self .
assertEqual (
response .
data [
"results" ][
"packages" ][
0 ][
"purl" ],
"pkg:npm/[email protected] " )
251
+ self .assertIn ("results" , response .data )
252
+ self .assertIn ("packages" , response .data ["results" ])
253
+ package_purls = [pkg ["purl" ] for pkg in response .data ["results" ]["packages" ]]
254
+ self .assertNotIn (self .package1 .package_url , package_purls )
255
+ self .assertIn (self .package2 .package_url , package_purls )
252
256
253
257
def test_filter_packages_by_purl (self ):
254
258
"""
0 commit comments