diff --git a/network/digitalocean_test.go b/network/digitalocean_test.go index 381ce2c..ec07c9b 100644 --- a/network/digitalocean_test.go +++ b/network/digitalocean_test.go @@ -52,6 +52,14 @@ func TestParseNameservers(t *testing.T) { } } +func mkInvalidMAC() error { + if isGo15 { + return &net.AddrError{Err: "invalid MAC address", Addr: "bad"} + } else { + return errors.New("invalid MAC address: bad") + } +} + func TestParseInterface(t *testing.T) { for _, tt := range []struct { cfg digitalocean.Interface @@ -64,7 +72,7 @@ func TestParseInterface(t *testing.T) { cfg: digitalocean.Interface{ MAC: "bad", }, - err: errors.New("invalid MAC address: bad"), + err: mkInvalidMAC(), }, { cfg: digitalocean.Interface{ @@ -337,13 +345,13 @@ func TestParseInterfaces(t *testing.T) { cfg: digitalocean.Interfaces{ Public: []digitalocean.Interface{{MAC: "bad"}}, }, - err: errors.New("invalid MAC address: bad"), + err: mkInvalidMAC(), }, { cfg: digitalocean.Interfaces{ Private: []digitalocean.Interface{{MAC: "bad"}}, }, - err: errors.New("invalid MAC address: bad"), + err: mkInvalidMAC(), }, } { ifaces, err := parseInterfaces(tt.cfg, tt.nss) diff --git a/network/is_go15_false_test.go b/network/is_go15_false_test.go new file mode 100644 index 0000000..85d5f0d --- /dev/null +++ b/network/is_go15_false_test.go @@ -0,0 +1,5 @@ +// +build !go1.5 + +package network + +const isGo15 = false diff --git a/network/is_go15_true_test.go b/network/is_go15_true_test.go new file mode 100644 index 0000000..953836d --- /dev/null +++ b/network/is_go15_true_test.go @@ -0,0 +1,5 @@ +// +build go1.5 + +package network + +const isGo15 = true