Пример #1
0
            'cwes': [c.to_json() for c in self.cwes if self.cwes is not None],
            'cpes': [c.to_json() for c in self.cpes if self.cpes is not None],
            'cvss3': self.cvss3.to_json() if self.cvss3 is not None else None,
            'descriptions': [d.to_json() for d in self.descriptions],
            'published_date': self.published_date,
            'last_modified_date': self.last_modified_date,
            'references': [r.to_json() for r in self.references],
        }


Index("idx_nvd_jsons_cveid", Nvd.cve_id)

# pylint: disable=invalid-name
load_only_cpe_product = joinedload(Nvd.cpes).load_only(Cpe.vendor, Cpe.product)
load_only_cwe_subset = joinedload(Nvd.cwes).load_only(Cwe.cwe_id)
load_only_cwe_subset = load_only_cwe_subset.joinedload(Cwe.cwe_data).load_only(
    CweData.cwe_name)
load_only_base_score = joinedload(Nvd.cvss3).load_only(Cvss3.base_score)
load_only_description_value = joinedload(Nvd.descriptions).load_only(
    Description.value)
default_nvd_view_options = [
    load_only_cpe_product,
    load_only_cwe_subset,
    load_only_base_score,
    load_only_description_value,
]
# pylint: enable=invalid-name

# must be set after all definitions
__all__ = populate_models(__name__)
Пример #2
0
def test_populate_models_returns_empty_array_on_invalid_modules():
    assert populate_models('sys') == []
    assert populate_models('lib') == []
    assert populate_models('data') == []
Пример #3
0
def test_populate_models_returns_models():
    models = populate_models('data.models')
    assert len(models) > 0
    assert 'Vulnerability' in models
    assert 'Nvd' in models
Пример #4
0
def test_populate_models_returns_empty_array_on_unknown_module():
    assert populate_models('this_module_does_not_exist') == []