Skip to content

Commit 41139af

Browse files
sysdig: reorganize files to make test parsers happy
1 parent 2cc0148 commit 41139af

2 files changed

Lines changed: 41 additions & 34 deletions

File tree

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
from dojo.models import Test
2+
from dojo.tools.sysdig.sysdig_cli.parser import SysdigCLIParser
3+
from dojo.tools.sysdig.sysdig_reports.parser import SysdigReportsParser
4+
from unittests.dojo_test_case import DojoTestCase, get_unit_tests_scans_path
5+
6+
7+
class TestSysdigParsers(DojoTestCase):
8+
9+
def test_sysdig_parser_with_many_vuln_has_many_findings_cli(self):
10+
with open(get_unit_tests_scans_path("sysdig_cli") / "sysdig_reports_many_vul.csv", encoding="utf-8") as testfile:
11+
parser = SysdigCLIParser()
12+
findings = parser.get_findings(testfile, Test())
13+
for finding in findings:
14+
for endpoint in finding.unsaved_endpoints:
15+
endpoint.clean()
16+
self.assertEqual(31, len(findings))
17+
finding = findings[0]
18+
self.assertEqual("CVE-2013-7459 - pycrypto", finding.title)
19+
self.assertEqual("pycrypto", finding.component_name)
20+
self.assertEqual("2.6.1", finding.component_version)
21+
self.assertEqual("Critical", finding.severity)
22+
self.assertEqual("CVE-2013-7459", finding.unsaved_vulnerability_ids[0])
23+
self.assertEqual(9.8, finding.cvssv3_score)
24+
self.assertEqual("https://nvd.nist.gov/vuln/detail/CVE-2013-7459", finding.references)
25+
self.assertEqual("0.00587", finding.epss_score)
26+
27+
def test_sysdig_parser_json_with_many_findings_cli(self):
28+
with open(get_unit_tests_scans_path("sysdig_cli") / "sysdig_reports_many_vul.json", encoding="utf-8") as testfile:
29+
parser = SysdigCLIParser()
30+
findings = parser.get_findings(testfile, Test())
31+
for finding in findings:
32+
for endpoint in finding.unsaved_endpoints:
33+
endpoint.clean()
34+
self.assertEqual(31, len(findings))
35+
finding = findings[0]
36+
self.assertEqual("CVE-2023-50782 - cryptography - v42.0.0", finding.title)
37+
self.assertEqual("cryptography", finding.component_name)
38+
self.assertEqual("1.7.1", finding.component_version)
39+
self.assertEqual("High", finding.severity)
40+
self.assertEqual("CVE-2023-50782", finding.unsaved_vulnerability_ids[0])
41+
self.assertEqual(7.5, finding.cvssv3_score)

unittests/tools/test_sysdig_parsers.py renamed to unittests/tools/test_sysdig_report_parser.py

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -66,37 +66,3 @@ def test_sysdig_parser_json_with_many_findings(self):
6666
for endpoint in finding.unsaved_endpoints:
6767
endpoint.clean()
6868
self.assertEqual(207, len(findings))
69-
70-
def test_sysdig_parser_with_many_vuln_has_many_findings_cli(self):
71-
with open(get_unit_tests_scans_path("sysdig_cli") / "sysdig_reports_many_vul.csv", encoding="utf-8") as testfile:
72-
parser = SysdigCLIParser()
73-
findings = parser.get_findings(testfile, Test())
74-
for finding in findings:
75-
for endpoint in finding.unsaved_endpoints:
76-
endpoint.clean()
77-
self.assertEqual(31, len(findings))
78-
finding = findings[0]
79-
self.assertEqual("CVE-2013-7459 - pycrypto", finding.title)
80-
self.assertEqual("pycrypto", finding.component_name)
81-
self.assertEqual("2.6.1", finding.component_version)
82-
self.assertEqual("Critical", finding.severity)
83-
self.assertEqual("CVE-2013-7459", finding.unsaved_vulnerability_ids[0])
84-
self.assertEqual(9.8, finding.cvssv3_score)
85-
self.assertEqual("https://nvd.nist.gov/vuln/detail/CVE-2013-7459", finding.references)
86-
self.assertEqual("0.00587", finding.epss_score)
87-
88-
def test_sysdig_parser_json_with_many_findings_cli(self):
89-
with open(get_unit_tests_scans_path("sysdig_cli") / "sysdig_reports_many_vul.json", encoding="utf-8") as testfile:
90-
parser = SysdigCLIParser()
91-
findings = parser.get_findings(testfile, Test())
92-
for finding in findings:
93-
for endpoint in finding.unsaved_endpoints:
94-
endpoint.clean()
95-
self.assertEqual(31, len(findings))
96-
finding = findings[0]
97-
self.assertEqual("CVE-2023-50782 - cryptography - v42.0.0", finding.title)
98-
self.assertEqual("cryptography", finding.component_name)
99-
self.assertEqual("1.7.1", finding.component_version)
100-
self.assertEqual("High", finding.severity)
101-
self.assertEqual("CVE-2023-50782", finding.unsaved_vulnerability_ids[0])
102-
self.assertEqual(7.5, finding.cvssv3_score)

0 commit comments

Comments
 (0)