Skip to content

Commit dfd09d2

Browse files
committed
Refactor to_version_ranges code, add and update tests #970
Reference: #970 Signed-off-by: John M. Horan <[email protected]>
1 parent 1476d65 commit dfd09d2

14 files changed

+865
-4455
lines changed

vulnerabilities/importers/apache_tomcat.py

Lines changed: 3 additions & 255 deletions
Large diffs are not rendered by default.

vulnerabilities/tests/test_apache_tomcat.py

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,18 @@
99

1010
import os
1111
from unittest import TestCase
12-
from unittest.mock import patch
1312

14-
from packageurl import PackageURL
1513
from univers.version_constraint import VersionConstraint
1614
from univers.version_range import ApacheVersionRange
1715
from univers.version_range import MavenVersionRange
1816
from univers.versions import MavenVersion
1917
from univers.versions import SemverVersion
2018

21-
from vulnerabilities.importer import AdvisoryData
22-
from vulnerabilities.importer import Reference
2319
from vulnerabilities.importers.apache_tomcat import ApacheTomcatImporter
2420
from vulnerabilities.importers.apache_tomcat import extract_tomcat_advisory_data_from_page
2521
from vulnerabilities.importers.apache_tomcat import to_version_ranges_apache
2622
from vulnerabilities.importers.apache_tomcat import to_version_ranges_maven
27-
from vulnerabilities.package_managers import MavenVersionAPI
28-
from vulnerabilities.package_managers import PackageVersion
29-
from vulnerabilities.utils import AffectedPackage
23+
from vulnerabilities.tests import util_tests
3024

3125
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
3226
TEST_DATA = os.path.join(BASE_DIR, "test_data/apache_tomcat")
@@ -37,6 +31,13 @@ def test_method_extract_advisories_from_page():
3731
raw_data = f.read()
3832
extracted_advisories = ApacheTomcatImporter().extract_advisories_from_page(raw_data)
3933

34+
results = [adv.to_dict() for d in extracted_advisories for adv in d]
35+
36+
expected_file = os.path.join(
37+
TEST_DATA, f"parse-apache_tomcat-selected-advisories-expected.json"
38+
)
39+
util_tests.check_results_against_json(results, expected_file)
40+
4041

4142
def test_extract_advisories_from_page():
4243
page = """
@@ -303,12 +304,6 @@ def test_extract_advisories_from_page_with_multiple_groups():
303304
assert results == expected
304305

305306

306-
# This test is temporary -- just for running apache_tomcat.py using all HTML report pages.
307-
# Will replace with a REGEN-based test as with apache_httpd and postgresql.
308-
def test_advisory_data():
309-
returned_advisories = ApacheTomcatImporter().advisory_data()
310-
311-
312307
def test_fetch_links():
313308
retrieved_links = ApacheTomcatImporter().fetch_advisory_links(
314309
"https://tomcat.apache.org/security"

vulnerabilities/tests/test_data/apache_tomcat/apache_tomcat_cve-2020-9484.html

Lines changed: 0 additions & 248 deletions
This file was deleted.

0 commit comments

Comments
 (0)