def test_resolve_simple(): mod_1 = module_util.import_module("test_module") vuln1 = mod_1.new_vulnerability("VULN_1_A", "Test Vuln A", "A", "1.0.0") vuln1.add_dependency(("B", ">0.1")) mod_1.add_vulnerability(vuln1) mod_1.override_class_name("mod_1") mod_1.set_name("Mod_1") assert mod_1.get_class_name() == "mod_1" module_util.set_stub_module("mod_1", mod_1) mod_2 = module_util.import_module("test_module") vuln2 = mod_2.new_vulnerability("VULN_2_A", "Test Vuln B", "B", "1.0.0") mod_2.add_vulnerability(vuln2) mod_2.override_class_name("mod_2") mod_2.set_name("Mod_2") assert mod_2.get_class_name() == "mod_2" module_util.set_stub_module("mod_2", mod_2) mod_list = module_util.get_module_list() assert "mod_1" in mod_list assert "mod_2" in mod_list resolving = resolve.resolver() resolving.add_module("mod_1") assert resolving.start_resolve() == True assert resolving.get_install_order() == ['mod_2', 'mod_1'] resolving = resolve.resolver() resolving.add_module("mod_1") resolving.add_module("mod_2") assert resolving.start_resolve() == True assert resolving.get_install_order() == ['mod_2', 'mod_1'] assert resolving.get_install_order() != ['mod_1', 'mod_2'] module_util.remove_stub_module("mod_1") module_util.remove_stub_module("mod_2")
def test_set_stub_module(): test_obj = module_util.import_module("test_module") test_obj.override_class_name("test2") assert test_obj.get_class_name() == "test2" test_obj.set_name("test2") assert test_obj.name() == "test2" module_util.set_stub_module("test2", test_obj) assert module_util.module_exists("test2") module_list = module_util.get_module_list() assert "test2" in module_list module_util.remove_stub_module("test2") assert not module_util.module_exists("test2") module_list = module_util.get_module_list() assert not "test2" in module_list
def remove_stubs(): for module in added_stub_modules: module_util.remove_stub_module(module)