summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Fitzpatrick <bradfitz@golang.org>2011-09-21 08:30:47 -0700
committerBrad Fitzpatrick <bradfitz@golang.org>2011-09-21 08:30:47 -0700
commit96f968df9ca9533b5f6bd04bc288a047e275b9a2 (patch)
tree4f28591e54a3984bb32d1ddcabeeae827b61aad1
parent1262f6bde78e92b2156a7ae8acfeb5ed81bfecdb (diff)
downloadgo-git-96f968df9ca9533b5f6bd04bc288a047e275b9a2.tar.gz
http: add a (disabled) test for TLS handshake timeouts
It's currently broken and disabled, pending a fix for Issue 2281. R=golang-dev, adg CC=golang-dev https://golang.org/cl/5092045
-rw-r--r--src/pkg/http/serve_test.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/pkg/http/serve_test.go b/src/pkg/http/serve_test.go
index 86653216fc..1bb748c3c9 100644
--- a/src/pkg/http/serve_test.go
+++ b/src/pkg/http/serve_test.go
@@ -535,6 +535,30 @@ func TestHeadResponses(t *testing.T) {
}
}
+func TestTLSHandshakeTimeout(t *testing.T) {
+ if true {
+ t.Logf("Skipping broken test; issue 2281")
+ return
+ }
+ ts := httptest.NewUnstartedServer(HandlerFunc(func(w ResponseWriter, r *Request) {}))
+ ts.Config.ReadTimeout = 250e6
+ ts.StartTLS()
+ defer ts.Close()
+ conn, err := net.Dial("tcp", ts.Listener.Addr().String())
+ if err != nil {
+ t.Fatalf("Dial: %v", err)
+ }
+ defer conn.Close()
+ timer := time.AfterFunc(10e9, func() { t.Fatalf("Timeout") })
+ defer timer.Stop()
+
+ var buf [1]byte
+ n, err := conn.Read(buf[:])
+ if err == nil || n != 0 {
+ t.Errorf("Read = %d, %v; want an error and no bytes", n, err)
+ }
+}
+
func TestTLSServer(t *testing.T) {
ts := httptest.NewTLSServer(HandlerFunc(func(w ResponseWriter, r *Request) {
if r.TLS != nil {