Exemplo n.º 1
0
def generate_modules(config):
    for item in config:

        new_module = module_util.import_module("test_module")

        if not "class_name" in item:
            raise ValueError("class_name is required")
        elif not "print_name" in item:
            raise ValueError("print_name is required")

        new_module.override_class_name(item['class_name'])
        new_module.set_name(item['print_name'])

        assert new_module.get_class_name() == item['class_name']
        assert new_module.name() == item['print_name']

        for vuln in item['vulns']:

            new_vuln = new_module.new_vulnerability(vuln['name'], vuln['desc'],
                                                    vuln['provides'],
                                                    vuln['version'])

            if len(vuln['deps']) > 0:
                new_vuln.add_dependency(vuln['deps'])

            new_module.add_vulnerability(new_vuln)

        module_util.set_stub_module(item['class_name'], new_module)
        added_stub_modules.append(item['class_name'])
Exemplo n.º 2
0
def generate_modules(config):
	for item in config:
		
		new_module = module_util.import_module("test_module")
		
		if not "class_name" in item:
			raise ValueError("class_name is required")
		elif not "print_name" in item:
			raise ValueError("print_name is required")
		
		
		new_module.override_class_name(item['class_name'])
		new_module.set_name(item['print_name'])
		
		assert new_module.get_class_name() == item['class_name']
		assert new_module.name() == item['print_name']
		
		for vuln in item['vulns']:
			
			new_vuln = new_module.new_vulnerability(vuln['name'], vuln['desc'], vuln['provides'], vuln['version'])
			
			if len(vuln['deps']) > 0:
				new_vuln.add_dependency(vuln['deps'])
								
			new_module.add_vulnerability(new_vuln)
		
		module_util.set_stub_module(item['class_name'], new_module)
		added_stub_modules.append(item['class_name'])
Exemplo n.º 3
0
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")
Exemplo n.º 4
0
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
Exemplo n.º 6
0
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