def test_affected_and_safe_purls(self): exp_affected = { PackageURL( type="ebuild", namespace="dev-vcs", name="subversion", version="0.1.1", qualifiers=OrderedDict(), subpath=None, ) } exp_safe = { PackageURL( type="ebuild", namespace="dev-vcs", name="subversion", version="1.9.7", qualifiers=OrderedDict(), subpath=None, ) } aff, safe = GentooDataSource.affected_and_safe_purls(self.affected) assert aff == exp_affected assert safe == exp_safe
def test_cves_from_reference(self): exp_cves = {"CVE-2017-9800"} found_cves = set() for ref in self.references: found_cves.update(GentooDataSource.cves_from_reference(ref)) assert exp_cves == found_cves
def setUpClass(cls): data_source_cfg = { 'repository_url': 'https://example.git', } cls.data_src = GentooDataSource(1, config=data_source_cfg) cls.xml_doc = ET.parse(TEST_DATA) cls.references = [] for child in cls.xml_doc.getroot(): if child.tag == 'references': cls.references.append(child) if child.tag == 'affected': cls.affected = child
def test_affected_and_safe_purls(self): exp_affected = { PackageURL( type='ebuild', namespace='dev-vcs', name='subversion', version='0.1.1', qualifiers=OrderedDict(), subpath=None)} exp_safe = { PackageURL( type='ebuild', namespace='dev-vcs', name='subversion', version='1.9.7', qualifiers=OrderedDict(), subpath=None)} aff, safe = GentooDataSource.affected_and_safe_purls(self.affected) assert aff == exp_affected assert safe == exp_safe