def test_get_dns_config_dir_checks_environ_first(self): directory = self.make_dir() self.useFixture(EnvironmentVariable("MAAS_DNS_CONFIG_DIR", directory)) self.assertThat( config.get_dns_config_dir(), MatchesAll(SamePath(directory), IsInstance(str)), )
def test_get_dns_config_dir_defaults_to_etc_bind_maas(self): self.useFixture(EnvironmentVariable("MAAS_DNS_CONFIG_DIR")) self.assertThat( config.get_dns_config_dir(), MatchesAll(SamePath(locate_config("../bind/maas")), IsInstance(str)), )
def test_computes_dns_config_file_paths(self): domain = factory.make_name("zone") dns_zone_config = DNSForwardZoneConfig(domain) self.assertEqual( os.path.join(get_dns_config_dir(), "zone.%s" % domain), dns_zone_config.zone_info[0].target_path, )
def test_computes_dns_config_file_paths_for_small_network(self): domain = factory.make_name('zone') reverse_file_name = 'zone.192-27.0.168.192.in-addr.arpa' dns_zone_config = DNSReverseZoneConfig( domain, network=IPNetwork("192.168.0.192/27")) self.assertEqual(1, len(dns_zone_config.zone_info)) self.assertEqual(os.path.join(get_dns_config_dir(), reverse_file_name), dns_zone_config.zone_info[0].target_path)
def test_get_include_snippet_returns_snippet(self): target_dir = patch_dns_config_path(self) snippet = DNSConfig.get_include_snippet() self.assertThat( snippet, MatchesAll( Not(StartsWith('\n')), EndsWith('\n'), Contains(target_dir), Contains('include "%s/%s"' % ( config.get_dns_config_dir(), DNSConfig.target_file_name, ))))
def test_computes_dns_config_file_paths(self): domain = factory.make_name('zone') reverse_file_name = [ 'zone.%d.168.192.in-addr.arpa' % i for i in range(4) ] dns_zone_config = DNSReverseZoneConfig( domain, network=IPNetwork("192.168.0.0/22")) for i in range(4): self.assertEqual( os.path.join(get_dns_config_dir(), reverse_file_name[i]), dns_zone_config.zone_info[i].target_path)