|
17 | 17 | from univers import versions |
18 | 18 |
|
19 | 19 | from vulnerabilities import models |
20 | | -from vulnerabilities.models import Alias |
| 20 | +from vulnerabilities.models import AffectedByPackageRelatedVulnerability, Alias, FixingPackageRelatedVulnerability, VulnerabilitySeverity |
21 | 21 | from vulnerabilities.models import Package |
22 | 22 | from vulnerabilities.models import Vulnerability |
23 | 23 | from vulnerabilities.templatetags.url_filters import url_quote_filter |
@@ -279,48 +279,54 @@ def test_url_quote_filter(self, input_value, expected_output): |
279 | 279 |
|
280 | 280 | class VulnerabilitySearchTestCaseWithPackages(TestCase): |
281 | 281 | def setUp(self): |
282 | | - self.vuln1 = models.Vulnerability.objects.create( |
| 282 | + self.vuln1 = Vulnerability.objects.create( |
283 | 283 | vulnerability_id="VCID-1", summary="Vuln 1" |
284 | 284 | ) |
285 | | - self.vuln2 = models.Vulnerability.objects.create( |
| 285 | + self.vuln2 = Vulnerability.objects.create( |
286 | 286 | vulnerability_id="VCID-2", summary="Vuln 2" |
287 | 287 | ) |
288 | | - self.vuln3 = models.Vulnerability.objects.create( |
| 288 | + self.vuln3 = Vulnerability.objects.create( |
289 | 289 | vulnerability_id="VCID-3", summary="Vuln 3" |
290 | 290 | ) |
291 | | - self.vuln4 = models.Vulnerability.objects.create( |
| 291 | + self.vuln4 = Vulnerability.objects.create( |
292 | 292 | vulnerability_id="VCID-4", summary="Vuln 4" |
293 | 293 | ) |
294 | | - self.vuln5 = models.Vulnerability.objects.create( |
| 294 | + self.vuln5 = Vulnerability.objects.create( |
295 | 295 | vulnerability_id="VCID-5", summary="Vuln 5" |
296 | 296 | ) |
297 | 297 |
|
298 | | - self.package1 = models.Package.objects.create(type="pypi", name="django", version="1.0.0") |
299 | | - self.package2 = models.Package.objects.create(type="pypi", name="django", version="2.0.0") |
300 | | - self.package3 = models.Package.objects.create(type="pypi", name="django", version="3.0.0") |
| 298 | + self.package1 = Package.objects.create(type="pypi", name="django", version="1.0.0") |
| 299 | + self.package2 = Package.objects.create(type="pypi", name="django", version="2.0.0") |
| 300 | + self.package3 = Package.objects.create(type="pypi", name="django", version="3.0.0") |
301 | 301 |
|
302 | | - models.AffectedByPackageRelatedVulnerability.objects.create( |
| 302 | + AffectedByPackageRelatedVulnerability.objects.create( |
303 | 303 | package=self.package1, vulnerability=self.vuln1 |
304 | 304 | ) |
305 | | - |
306 | | - models.AffectedByPackageRelatedVulnerability.objects.create( |
| 305 | + AffectedByPackageRelatedVulnerability.objects.create( |
307 | 306 | package=self.package1, vulnerability=self.vuln2 |
308 | 307 | ) |
309 | | - |
310 | | - models.AffectedByPackageRelatedVulnerability.objects.create( |
| 308 | + AffectedByPackageRelatedVulnerability.objects.create( |
311 | 309 | package=self.package2, vulnerability=self.vuln3 |
312 | 310 | ) |
313 | | - |
314 | | - models.AffectedByPackageRelatedVulnerability.objects.create( |
| 311 | + AffectedByPackageRelatedVulnerability.objects.create( |
315 | 312 | package=self.package2, vulnerability=self.vuln4 |
316 | 313 | ) |
317 | 314 |
|
318 | | - # Associate fixed_by package with vuln5 |
319 | | - |
320 | | - models.FixingPackageRelatedVulnerability.objects.create( |
| 315 | + FixingPackageRelatedVulnerability.objects.create( |
321 | 316 | package=self.package3, vulnerability=self.vuln5 |
322 | 317 | ) |
323 | 318 |
|
| 319 | + self.severity1 = VulnerabilitySeverity.objects.create( |
| 320 | + scoring_system="CVSSv3", value="9.8", scoring_elements="AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" |
| 321 | + ) |
| 322 | + self.severity2 = VulnerabilitySeverity.objects.create( |
| 323 | + scoring_system="CVSSv3", value="7.5", scoring_elements="AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" |
| 324 | + ) |
| 325 | + |
| 326 | + self.vuln1.severities.add(self.severity1) |
| 327 | + self.vuln1.severities.add(self.severity2) |
| 328 | + self.vuln1.save() |
| 329 | + |
324 | 330 | def test_aggregate_fixed_and_affected_packages(self): |
325 | 331 | with self.assertNumQueries(11): |
326 | 332 | start_time = time.time() |
|
0 commit comments