Esempio n. 1
0
 def _test_dyn_resp_check(self, config, assertResult):
     cp = ConfigParser(config)
     cp.generate_config_objects()
     dnshandler = DNSHandler(cp)
     q = Query('foobar.com')
     result = dnshandler._dynamicResponseRequired(q)
     self.assertEqual(result, assertResult)
Esempio n. 2
0
 def test_config_dns_listener(self):
     """
     Performs various tests on the config files
     """
     init_config = os.path.join(self.config_dir, 'init_test.yaml')
     cp = ConfigParser()
     cp.parse_config(init_config)
     self.assertEqual(cp['dns_server']['ip'], '127.0.0.1')
     self.assertEqual(cp['dns_server']['port'], 53)
 def _test_domain_match(self, config, qtype, domain, should_match=None):
     cp = ConfigParser(config)
     cp.generate_config_objects()
     drg = DNSReplyGenerator(config)
     if should_match:
         config_entry = drg.getDomainConfigEntry(domain)
         self.assertEqual(config_entry[qtype], should_match)
     else:
         with self.assertRaises(RuntimeError):
             drg.getDomainConfigEntry(domain)
Esempio n. 4
0
 def test_handling_non_existant_key(self):
     cp = ConfigParser({})
     self.assertEqual(False, 'nonexistant' in cp)
Esempio n. 5
0
 def test_minimal_dns_config(self):
     cp = ConfigParser({})
     with self.assertRaises(RuntimeError):
         cp.validate_config()
Esempio n. 6
0
 def generateValidConfigParser(self):
     cp = ConfigParser({})
     cp['dns_server' ] = {'ip': '127.0.0.1', 'port': 53}
     cp['listening_info'] = {'ip': '127.0.0.1', 'port': 53}
     cp['default_dns_policy'] = 'forward'
     return cp
Esempio n. 7
0
 def _test_dns_reply_generation(self, config, query_type):
     cp = ConfigParser(config)
     cp.generate_config_objects()
     dnshandler = DNSHandler(cp)
     q = Query('domain.com', type=query_type)
     return dnshandler._doDynamicResponse(q)