diff options
| author | Mikio Hara <mikioh.mikioh@gmail.com> | 2013-02-14 07:02:32 +0900 |
|---|---|---|
| committer | Mikio Hara <mikioh.mikioh@gmail.com> | 2013-02-14 07:02:32 +0900 |
| commit | ee9d148ce159581dfd0005dede6c56d1d4afeafe (patch) | |
| tree | 9ee19976e6ba9cae321df89b79d66f6d27941afc /src/pkg | |
| parent | d6331b447fea50eca7ea6bd06370d0e028bdfdbf (diff) | |
| download | go-ee9d148ce159581dfd0005dede6c56d1d4afeafe.tar.xz | |
net: add test for Dial and Listen arguments
R=dave, bradfitz
CC=golang-dev
https://golang.org/cl/7305081
Diffstat (limited to 'src/pkg')
| -rw-r--r-- | src/pkg/net/dial_test.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/pkg/net/dial_test.go b/src/pkg/net/dial_test.go index 9aa8af5e3e..2303e8fa46 100644 --- a/src/pkg/net/dial_test.go +++ b/src/pkg/net/dial_test.go @@ -9,6 +9,7 @@ import ( "fmt" "io" "os" + "reflect" "regexp" "runtime" "testing" @@ -223,6 +224,31 @@ func TestDialError(t *testing.T) { } } +var invalidDialAndListenArgTests = []struct { + net string + addr string + err error +}{ + {"foo", "bar", &OpError{Op: "dial", Net: "foo", Addr: nil, Err: UnknownNetworkError("foo")}}, + {"baz", "", &OpError{Op: "listen", Net: "baz", Addr: nil, Err: UnknownNetworkError("baz")}}, + {"tcp", "", &OpError{Op: "dial", Net: "tcp", Addr: nil, Err: errMissingAddress}}, +} + +func TestInvalidDialAndListenArgs(t *testing.T) { + for _, tt := range invalidDialAndListenArgTests { + var err error + switch tt.err.(*OpError).Op { + case "dial": + _, err = Dial(tt.net, tt.addr) + case "listen": + _, err = Listen(tt.net, tt.addr) + } + if !reflect.DeepEqual(tt.err, err) { + t.Fatalf("got %#v; expected %#v", err, tt.err) + } + } +} + func TestDialTimeoutFDLeak(t *testing.T) { if runtime.GOOS != "linux" { // TODO(bradfitz): test on other platforms |
