def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._params = { 'instances': [True, False], } self.parser_mock = MagicMock(return_value=None) self.object._parse_zap_instance = self.parser_mock
def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._params = { 'alerts': [True, False], } self._parser = MagicMock(return_value=None) self.object._parse_zap_alert_dict = self._parser
class TestParseZapAlertDict(TestCase): def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._params = { 'instances': [True, False], } self.parser_mock = MagicMock(return_value=None) self.object._parse_zap_instance = self.parser_mock def test_has_defaults(self): return_dict = self.object._parse_zap_alert_dict(self._params) assert ('name' in return_dict) assert ( return_dict['name'] == '[Unknown Plugin ID] Unknown Alert Name') def test_keeps_params(self): self._params['pluginid'] = 'my plugin' self._params['name'] = 'my name' return_dict = self.object._parse_zap_alert_dict(self._params) assert ('name' in return_dict) assert (return_dict['name'] == 'my plugin my name') def test_passes_down(self): return_dict = self.object._parse_zap_alert_dict(self._params) self.parser_mock.assert_any_call(True, True, True) self.parser_mock.assert_any_call(False, True, True) assert (self.parser_mock.call_count == 2)
class TestParseZapSiteDict(TestCase): def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._params = { 'alerts': [True, False], } self._parser = MagicMock(return_value=None) self.object._parse_zap_alert_dict = self._parser def test_has_defaults(self): return_dict = self.object._parse_zap_site_dict(self._params) assert ('name' in return_dict) assert (return_dict['name'] == 'Site: Unknown Site Name') assert ('tests' in return_dict) self._parser.assert_any_call(True) self._parser.assert_any_call(False) assert (self._parser.call_count == 2) def test_reads_prefixed(self): self._params['@name'] = 'My Site Name' return_dict = self.object._parse_zap_site_dict(self._params) assert ('name' in return_dict) assert (return_dict['name'] == 'Site: My Site Name') assert ('tests' in return_dict) self._parser.assert_any_call(True) self._parser.assert_any_call(False) assert (self._parser.call_count == 2)
def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self.params = { 'version': None, 'generated': None, 'site': [True, False], } self.parser_mock = MagicMock(return_value=None) self.object._parse_zap_site_dict = self.parser_mock
class TestParseZapDict(TestCase): def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self.params = { 'version': None, 'generated': None, 'site': [True, False], } self.parser_mock = MagicMock(return_value=None) self.object._parse_zap_site_dict = self.parser_mock def test_has_defaults(self): return_dict = self.object._parse_zap_dict(self.params) expected_name = ('Oxygen ZAProxy Report (Unknown ZAProxy Version, ' 'Unknown ZAProxy Run Time)') assert ('name' in return_dict) assert (return_dict['name'] == expected_name) def test_keepsparams(self): self.params['version'] = 'my version' self.params['generated'] = 'when' return_dict = self.object._parse_zap_dict(self.params) assert ('name' in return_dict) assert (return_dict['name'] == ('Oxygen ZAProxy Report ' '(my version, when)')) def test_handles_oddparams(self): self.params['@version'] = 'my version' self.params['@generated'] = 'when' return_dict = self.object._parse_zap_dict(self.params) assert ('name' in return_dict) assert (return_dict['name'] == ('Oxygen ZAProxy Report ' '(my version, when)')) def test_calls_down(self): return_dict = self.object._parse_zap_dict(self.params) self.parser_mock.assert_any_call(True) self.parser_mock.assert_any_call(False) assert (self.parser_mock.call_count == 2)
class TestXmlToDict(TestCase): def _create_example_xml(self): xml_head = ET.Element('xml_head') xml_container = ET.SubElement(xml_head, 'xml_container') ET.SubElement(xml_head, 'second_child') ET.SubElement(xml_container, 'first_contained') ET.SubElement(xml_container, 'second_contained') return xml_head def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._xml = self._create_example_xml() def test_converts_xml(self): returned_dict = self.object._xml_to_dict(self._xml) assert ('xml_head' in returned_dict) assert ('xml_container' in returned_dict['xml_head']) assert ('second_child' in returned_dict['xml_head']) assert ('first_contained' in returned_dict['xml_head']['xml_container']) assert ('second_contained' in returned_dict['xml_head']['xml_container'])
class TestParseZapInstance(TestCase): def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self.object._parse_zap_site_dict = MagicMock(return_value=None) self.params = {} def test_has_defaults(self): return_dict = self.object._parse_zap_instance(self.params, True, True) expected_name = ('[Unknown HTTP Method] [Unknown Target URI]: ' '[Unknown Target Parameter]') assert ('name' in return_dict) assert (return_dict['name'] == expected_name) def test_keepsparams(self): self.params = { 'uri': 'foo', 'method': 'bar', 'param': 'baz', } return_dict = self.object._parse_zap_instance(self.params, True, True) assert ('name' in return_dict) assert (return_dict['name'] == 'bar foo: baz') def test_is_fail_if_risk_and_confident(self): return_dict = self.object._parse_zap_instance(self.params, True, True) assert ('pass' in return_dict) assert (return_dict['pass'] == False) def test_is_pass_if_risk_and_not_confident(self): return_dict = self.object._parse_zap_instance(self.params, True, False) assert ('pass' in return_dict) assert (return_dict['pass'] == True) def test_is_pass_if_not_risk_and_confident(self): return_dict = self.object._parse_zap_instance(self.params, False, True) assert ('pass' in return_dict) assert (return_dict['pass'] == True) def test_is_pass_if_not_risk_and_not_confident(self): return_dict = self.object._parse_zap_instance(self.params, False, False) assert ('pass' in return_dict) assert (return_dict['pass'] == True)
def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self._xml = self._create_example_xml()
def setUp(self): self.object = ZAProxyHandler(get_config()['oxygen.zap']) self.object._parse_zap_site_dict = MagicMock(return_value=None) self.params = {}