From 2cf5f04ffd4b00821fd0aed40ae8836f6ce8f161 Mon Sep 17 00:00:00 2001 From: Alex Brainman Date: Sat, 19 Dec 2015 17:42:16 +1100 Subject: [PATCH] net: adjust TestInterfaceHardwareAddrWithGetmac CL skips interfaces that are not listed on getmac output. Fixes #13606 Change-Id: Ic25c9dc95e8eeff4d84b78e99131a4f97020164c Reviewed-on: https://go-review.googlesource.com/17994 Reviewed-by: Mikio Hara Run-TryBot: Mikio Hara --- src/net/net_windows_test.go | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/net/net_windows_test.go b/src/net/net_windows_test.go index ef71b8d680..2e9a0aea3c 100644 --- a/src/net/net_windows_test.go +++ b/src/net/net_windows_test.go @@ -447,15 +447,14 @@ func TestInterfaceHardwareAddrWithGetmac(t *testing.T) { if err != nil { t.Fatal(err) } - have := make([]string, 0) + have := make(map[string]string) for _, ifi := range ift { if ifi.Flags&FlagLoopback != 0 { // no MAC address for loopback interfaces continue } - have = append(have, ifi.Name+"="+ifi.HardwareAddr.String()) + have[ifi.Name] = ifi.HardwareAddr.String() } - sort.Strings(have) out, err := runCmd("getmac", "/fo", "list", "/v") if err != nil { @@ -478,7 +477,7 @@ func TestInterfaceHardwareAddrWithGetmac(t *testing.T) { //Physical Address: XX-XX-XX-XX-XX-XX //Transport Name: Media disconnected // - want := make([]string, 0) + want := make(map[string]string) var name string lines := bytes.Split(out, []byte{'\r', '\n'}) for _, line := range lines { @@ -505,13 +504,20 @@ func TestInterfaceHardwareAddrWithGetmac(t *testing.T) { t.Fatal("empty address on \"Physical Address\" line: %q", line) } addr = strings.Replace(addr, "-", ":", -1) - want = append(want, name+"="+addr) + want[name] = addr name = "" } } - sort.Strings(want) - if strings.Join(want, "/") != strings.Join(have, "/") { - t.Fatalf("unexpected MAC addresses %q, want %q", have, want) + for name, wantAddr := range want { + haveAddr, ok := have[name] + if !ok { + t.Errorf("getmac lists %q, but it could not be found among Go interfaces %v", name, have) + continue + } + if haveAddr != wantAddr { + t.Errorf("unexpected MAC address for %q - %v, want %v", name, haveAddr, wantAddr) + continue + } } } -- 2.50.0