diff options
| author | Mikio Hara <mikioh.mikioh@gmail.com> | 2015-04-21 22:10:09 +0900 |
|---|---|---|
| committer | Mikio Hara <mikioh.mikioh@gmail.com> | 2015-04-22 00:29:40 +0000 |
| commit | 15648d2e77fa8116edd51a13fb5233e8ce0e98b3 (patch) | |
| tree | eaf7f589af894ef22501a29fc5afadbb1bd857bc /src/net/timeout_test.go | |
| parent | 72e867ed8ef16dfefbd83d948ce34f19489eb976 (diff) | |
| download | go-15648d2e77fa8116edd51a13fb5233e8ce0e98b3.tar.xz | |
net: replace server tests
This change replaces server tests with new ones that require features
introduced after go1 release, such as runtime-integrated network poller,
Dialer, etc.
Change-Id: Icf1f94f08f33caacd499cfccbe74cda8d05eed30
Reviewed-on: https://go-review.googlesource.com/9195
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/net/timeout_test.go')
| -rw-r--r-- | src/net/timeout_test.go | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/src/net/timeout_test.go b/src/net/timeout_test.go index 3ef22fa76f..c9a826e106 100644 --- a/src/net/timeout_test.go +++ b/src/net/timeout_test.go @@ -307,15 +307,14 @@ func TestTimeoutUDP(t *testing.T) { t.Skipf("skipping test on %q", runtime.GOOS) } - // set up a listener that won't talk back - listening := make(chan string) - done := make(chan int) - go runDatagramPacketConnServer(t, "udp", "127.0.0.1:0", listening, done) - addr := <-listening + c, err := newLocalPacketListener("udp") // a listener that won't talk back + if err != nil { + t.Fatal(err) + } - testTimeout(t, "udp", addr, false) - testTimeout(t, "udp", addr, true) - <-done + testTimeout(t, "udp", c.LocalAddr().String(), false) + testTimeout(t, "udp", c.LocalAddr().String(), true) + c.Close() } func TestTimeoutTCP(t *testing.T) { @@ -324,14 +323,25 @@ func TestTimeoutTCP(t *testing.T) { t.Skipf("skipping test on %q", runtime.GOOS) } - // set up a listener that won't talk back - listening := make(chan string) - done := make(chan int) - go runStreamConnServer(t, "tcp", "127.0.0.1:0", listening, done) - addr := <-listening + handler := func(ls *localServer, ln Listener) { // a listener that won't talk back + for { + c, err := ln.Accept() + if err != nil { + break + } + defer c.Close() + } + } + ls, err := newLocalServer("tcp") + if err != nil { + t.Fatal(err) + } + defer ls.teardown() + if err := ls.buildup(handler); err != nil { + t.Fatal(err) + } - testTimeout(t, "tcp", addr, false) - <-done + testTimeout(t, "tcp", ls.Listener.Addr().String(), false) } func TestDeadlineReset(t *testing.T) { |
