package dnstest import ( "testing" "github.com/miekg/dns" ) func TestNewServer(t *testing.T) { s := NewServer(func(w dns.ResponseWriter, r *dns.Msg) { ret := new(dns.Msg) ret.SetReply(r) w.WriteMsg(ret) }) defer s.Close() c := new(dns.Client) c.Net = "tcp" m := new(dns.Msg) m.SetQuestion("example.org.", dns.TypeSOA) ret, _, err := c.Exchange(m, s.Addr) if err != nil { t.Fatalf("Could not send message to dnstest.Server: %s", err) } if ret.Id != m.Id { t.Fatalf("Msg ID's should match, expected %d, got %d", m.Id, ret.Id) } c.Net = "udp" ret, _, err = c.Exchange(m, s.Addr) if err != nil { t.Fatalf("Could not send message to dnstest.Server: %s", err) } if ret.Id != m.Id { t.Fatalf("Msg ID's should match, expected %d, got %d", m.Id, ret.Id) } }