Skip to content
Snippets Groups Projects
Select Git revision
  • c7650f356855deeb44554fe7dc9bdde2d5d6aecc
  • master default
  • renovate/golang.org-x-crypto-0.x
  • renovate/go-1.x
  • renovate/golang.org-x-sync-0.x
  • renovate/opentelemetry-go-monorepo
  • renovate/github.com-go-webauthn-webauthn-0.x
  • renovate/github.com-mattn-go-sqlite3-1.x
  • renovate/github.com-go-ldap-ldap-v3-3.x
  • renovate/github.com-prometheus-client_golang-1.x
  • renovate/github.com-google-go-cmp-0.x
  • renovate/github.com-lunixbochs-struc-digest
  • renovate/github.com-duo-labs-webauthn-digest
13 results

dns_test.go

Blame
    • ale's avatar
      193e29e6
      Refactor the clientutil package · 193e29e6
      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).
      193e29e6
      History
      Refactor the clientutil package
      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).
    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)
    	}
    }