mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
net: add test for Dial and Listen arguments
R=dave, bradfitz CC=golang-dev https://golang.org/cl/7305081
This commit is contained in:
parent
d6331b447f
commit
ee9d148ce1
1 changed files with 26 additions and 0 deletions
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue