diff --git a/helpers_test.go b/helpers_test.go index d83e7dc020d1..f1bf482eabc2 100644 --- a/helpers_test.go +++ b/helpers_test.go @@ -513,7 +513,8 @@ func buildAndLoadAPI(apiGens ...func(spec *APISpec)) (specs []*APISpec) { return loadAPI(buildAPI(apiGens...)...) } -var domainsToAddresses map[string]string = map[string]string{ +// TODO - Can we just remove this? It doesn't make sense because is dependent on what your local router is. +var domainsToAddresses = map[string]string{ "host1.local.": "127.0.0.1", "host2.local.": "127.0.0.1", "host3.local.": "127.0.0.1", @@ -522,22 +523,23 @@ var domainsToAddresses map[string]string = map[string]string{ type dnsMockHandler struct{} -func (this *dnsMockHandler) ServeDNS(w dns.ResponseWriter, r *dns.Msg) { +func (d *dnsMockHandler) ServeDNS(w dns.ResponseWriter, r *dns.Msg) { msg := dns.Msg{} msg.SetReply(r) switch r.Question[0].Qtype { case dns.TypeA: msg.Authoritative = true domain := msg.Question[0].Name + address, ok := domainsToAddresses[domain] - if ok { - msg.Answer = append(msg.Answer, &dns.A{ - Hdr: dns.RR_Header{Name: domain, Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 60}, - A: net.ParseIP(address), - }) - } else { - panic("Following domain not mocked:" + domain) + if !ok { + address = "127.0.0.1" } + + msg.Answer = append(msg.Answer, &dns.A{ + Hdr: dns.RR_Header{Name: domain, Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 60}, + A: net.ParseIP(address), + }) } w.WriteMsg(&msg) }