diff options
author | Steve Newman <devnull@localhost> | 2009-06-09 10:58:58 -0700 |
---|---|---|
committer | Steve Newman <devnull@localhost> | 2009-06-09 10:58:58 -0700 |
commit | d655b1252ad194cda5ed7f6ddd6fc823127ae1dd (patch) | |
tree | 53e10a9a65585d23f1eee670ad1285847764c371 /src/pkg/http/client_test.go | |
parent | 046e2de9ba461c3b517b86e1e5962d40295264ab (diff) | |
download | golang-d655b1252ad194cda5ed7f6ddd6fc823127ae1dd.tar.gz |
Basic HTTP client.
R=rsc
APPROVED=rsc
DELTA=392 (386 added, 2 deleted, 4 changed)
OCL=29963
CL=30107
Diffstat (limited to 'src/pkg/http/client_test.go')
-rw-r--r-- | src/pkg/http/client_test.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/pkg/http/client_test.go b/src/pkg/http/client_test.go new file mode 100644 index 000000000..e9354fc40 --- /dev/null +++ b/src/pkg/http/client_test.go @@ -0,0 +1,40 @@ +// Copyright 2009 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Tests for client.go + +package http + +import ( + "fmt"; + "http"; + "io"; + "strings"; + "testing"; +) + +func TestClient(t *testing.T) { + // TODO: add a proper test suite. Current test merely verifies that + // we can retrieve the Google home page. + + r, url, err := Get("http://www.google.com"); + var b []byte; + if err == nil { + b, err = io.ReadAll(r.Body); + r.Body.Close(); + } + + // TODO: io.ErrEOF check is needed because we're sometimes getting + // this error when nothing is actually wrong. rsc suspects a bug + // in bufio. Can remove the ErrEOF check once the bug is fixed + // (expected to occur within a few weeks of this writing, 6/9/09). + if err != nil && err != io.ErrEOF { + t.Errorf("Error fetching URL: %v", err); + } else { + s := string(b); + if (!strings.HasPrefix(s, "<html>")) { + t.Errorf("Incorrect page body (did not begin with <html>): %q", s); + } + } +} |