def unsupported_cve_none_versions(): """Unsupported ecosystem CVE fixture. Some of the CVE versions in this CVE are "None". """ with open('tests/data/unsupported-nvdcve-2.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)
def test_dictionarize(self): """Test `utils.dictionarize` function.""" sample_cve_path = 'data/cve-1.0-sample.json' with open(sample_cve_path) as f: data = json.loads(f.read()) doc = Document.from_data(data) doc_dict = utils.dictionarize(doc) self.assertIsInstance(doc_dict, dict) self.assertIsInstance(doc_dict['cve'], dict) self.assertIsInstance(doc_dict['impact'], dict) self.assertIsInstance(doc_dict['configurations'], dict)
def test_get_description_by_lang(self): """Test `utils.get_description_by_lang` function.""" with open(SAMPLE_CVE_PATH) as f: data, = json.load(f)['CVE_Items'] doc = Document.from_data(data) desc_en = get_description_by_lang(doc) self.assertTrue(desc_en) self.assertIsInstance(desc_en, str) desc_fr = get_description_by_lang(doc, lang='fr') self.assertIsNone(desc_fr)
def test_get_cpe(self): """Test `utils.get_cpe` function.""" with open(SAMPLE_CVE_PATH) as f: data, = json.load(f)['CVE_Items'] doc = Document.from_data(data) # default cpe_list = get_cpe(doc) self.assertEqual(len(cpe_list), 1) # operating_system cpe_list = get_cpe(doc, cpe_type='op') self.assertEqual(len(cpe_list), 0) # application cpe_list = get_cpe(doc, cpe_type='application') self.assertEqual(len(cpe_list), 1)
import json import tempfile import unittest from nvdlib.adapters import DefaultAdapter from nvdlib.model import Document import nvdlib.query_selectors as selectors SAMPLE_CVE_PATH = 'data/cve-1.0-sample.json' with open(SAMPLE_CVE_PATH) as f: data = json.load(f) DOCUMENT: Document = Document.from_data(data) del data class TestDefaultAdapter(unittest.TestCase): def test___init__(self): """Test DefaultAdapters initialization.""" adapter = DefaultAdapter() self.assertIsInstance(adapter, DefaultAdapter) def test_connect(self): """Test DefaultAdapters `connect` method.""" tmp_storage = tempfile.mkdtemp(prefix='tests_', suffix='_adapters')
def unsupported_cve(): """Unsupported ecosystem CVE fixture.""" with open('tests/data/unsupported-nvdcve.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)
def rejected_cve(): """Rejected CVE fixture.""" with open('tests/data/rejected-nvdcve.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)
def maven_vertx_cve(): """Maven Vert.x CVE fixture.""" with open('tests/data/maven-vertx-nvdcve.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)
def python_cve(): """Maven CVE fixture.""" with open('tests/data/python-nvdcve.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)
def javascript_cve(): """JavaScript CVE fixture.""" with open('tests/data/javascript-nvdcve.json') as f: data, = json.load(f)['CVE_Items'] return Document.from_data(data)