20
20
from vulnerabilities .importer import Reference
21
21
from vulnerabilities .pipelines import VulnerableCodeBaseImporterPipeline
22
22
from vulnerabilities .pipelines import VulnerableCodePipeline
23
+ from vulnerabilities .pipes .advisory import get_or_create_aliases
23
24
from vulnerabilities .tests .pipelines import TestLogger
24
25
25
26
advisory_data1 = AdvisoryData (
38
39
39
40
40
41
def get_advisory1 (created_by = "test_pipeline" ):
41
- return models .Advisory .objects .create (
42
- aliases = advisory_data1 .aliases ,
42
+ adv = models .Advisory .objects .create (
43
43
summary = advisory_data1 .summary ,
44
44
affected_packages = [pkg .to_dict () for pkg in advisory_data1 .affected_packages ],
45
45
references = [ref .to_dict () for ref in advisory_data1 .references ],
46
46
url = advisory_data1 .url ,
47
47
created_by = created_by ,
48
48
date_collected = timezone .now (),
49
49
)
50
+ adv .aliases .add (* get_or_create_aliases (advisory_data1 .aliases ))
51
+ return adv
50
52
51
53
52
54
class TestVulnerableCodePipeline (TestCase ):
@@ -101,7 +103,7 @@ def test_collect_and_store_advisories(self, mock_advisories_count, mock_collect_
101
103
self .assertEqual (1 , models .Advisory .objects .count ())
102
104
103
105
collected_advisory = models .Advisory .objects .first ()
104
- result_aliases = collected_advisory .aliases
106
+ result_aliases = [ item . alias for item in collected_advisory .aliases . all ()]
105
107
expected_aliases = advisory_data1 .aliases
106
108
107
109
self .assertEqual (expected_aliases , result_aliases )
@@ -122,4 +124,5 @@ def test_import_new_advisories(self):
122
124
self .assertEqual (1 , imported_vulnerability .aliases .count ())
123
125
124
126
expected_alias = imported_vulnerability .aliases .first ()
125
- self .assertEqual (advisory1 .aliases [0 ], expected_alias .alias )
127
+ result_alias = advisory1 .aliases .first ()
128
+ self .assertEqual (result_alias .alias , expected_alias .alias )
0 commit comments