1 // Copyright 2009 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
12 type hostTest
struct {
17 var hosttests
= []hostTest
{
35 func TestLookupStaticHost(t
*testing
.T
) {
37 hostsPath
= "testdata/hosts"
38 for i
:= 0; i
< len(hosttests
); i
++ {
40 ips
:= lookupStaticHost(tt
.host
)
41 if len(ips
) != len(tt
.ips
) {
42 t
.Errorf("# of hosts = %v; want %v",
43 len(ips
), len(tt
.ips
))
46 for k
, v
:= range ips
{
47 if tt
.ips
[k
].String() != v
{
48 t
.Errorf("lookupStaticHost(%q) = %v; want %v",
49 tt
.host
, v
, tt
.ips
[k
])
56 func TestLookupHost(t
*testing
.T
) {
57 // Can't depend on this to return anything in particular,
58 // but if it does return something, make sure it doesn't
59 // duplicate addresses (a common bug due to the way
60 // getaddrinfo works).
61 addrs
, _
:= LookupHost("localhost")
63 for i
:= 0; i
+1 < len(addrs
); i
++ {
64 if addrs
[i
] == addrs
[i
+1] {
65 t
.Fatalf("LookupHost(\"localhost\") = %v, has duplicate addresses", addrs
)