Select Git revision
dns_test.go
-
ale authored
Implement a simpler API for the Backend interface, removing most old public methods and replacing them with a single Call() method, making the package look a bit more like an actual rpc package (so, hopefully, easier to replace in the future).
ale authoredImplement a simpler API for the Backend interface, removing most old public methods and replacing them with a single Call() method, making the package look a bit more like an actual rpc package (so, hopefully, easier to replace in the future).
dns_test.go 557 B
package clientutil
import "testing"
type fakeResolver struct {
addrs []string
requests int
}
func (r *fakeResolver) ResolveIP(host string) []string {
r.requests++
return r.addrs
}
func TestDNSCache(t *testing.T) {
r := &fakeResolver{addrs: []string{"1.2.3.4"}}
c := newDNSCache(r)
for i := 0; i < 5; i++ {
addrs := c.ResolveIP("a.b.c.d")
if len(addrs) != 1 {
t.Errorf("ResolveIP returned bad response: %v", addrs)
}
}
if r.requests != 1 {
t.Errorf("cached resolver has wrong number of requests: %d, expecting 1", r.requests)
}
}