def test_Plugin_creates_apropiate_objects(self, monkeypatch): self.plugin = AcunetixPlugin() factory.register(Host) factory.register(Service) factory.register(Vuln) factory.register(VulnWeb) factory.register(Note) factory.register(Credential) pending_actions = Queue() # getID will wait for faraday-server api response. # Since the thread model controller is not running # no object will be persisted. # The mock is to simulated the api response monkeypatch.setattr(ModelBase, 'getID', lambda _: 1) self.plugin.set_actions_queue(pending_actions) self.plugin.processReport(self.cd + '/acunetix_xml') actions = defaultdict(list) while not pending_actions.empty(): action = self.plugin._pending_actions.get(block=True) actions[action[0]].append(action[1]) assert actions.keys() == [2000, 20008, 2038] assert len(actions[2000]) == 1 assert actions[2000][0].name == "5.175.17.140" assert len(actions[20008]) == 1 assert len(actions[2038]) == 52 assert actions[20008][0].ports == [80] assert actions[20008][0].name == 'http' assert actions[20008][0].protocol == 'tcp' assert "ASP.NET error message" in map(lambda vuln_web: vuln_web.name, actions[2038])
def setUp(self): self.plugin = AcunetixPlugin() factory.register(Host) factory.register(Interface) factory.register(Service) factory.register(Vuln) factory.register(VulnWeb) factory.register(Note) factory.register(Credential)
def setUp(self): self.plugin = AcunetixPlugin() factory.register(Host) factory.register(Interface) factory.register(Service) factory.register(ModelObjectVuln) factory.register(ModelObjectVulnWeb) factory.register(ModelObjectNote) factory.register(ModelObjectCred)