import importlib.util from pathlib import Path import unittest spec=importlib.util.spec_from_file_location('sync',Path(__file__).resolve().parents[1]/'scripts/sync.py') mod=importlib.util.module_from_spec(spec);spec.loader.exec_module(mod) class TestIndex(unittest.TestCase): def test_filter(self): self.assertTrue(mod.eligible('opensuse-su-2017_0034-1.json',2017)) self.assertTrue(mod.eligible('suse-su-2026_9999-1.json',2017)) self.assertFalse(mod.eligible('opensuse-su-2016_2223-1.json',2017)) self.assertFalse(mod.eligible('../invalid-2026.json',2017)) self.assertEqual(len(mod.load_index(b'opensuse-su-2016_2223-1.json\nopensuse-su-2017_0034-1.json\n',2017)),1) def test_csaf(self): mod.valid_doc(b'{"document":{},"vulnerabilities":[]}') with self.assertRaises(ValueError):mod.valid_doc(b'{"hello":"world"}') if __name__=='__main__':unittest.main()