package gziphttp import ( "fmt" "io/ioutil" "net/http" "net/http/httptest" "testing" ) func TestGZipResponseWriter(t *testing.T) { s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { gz := New(w) defer gz.Close() fmt.Fprintln(gz, "Hello world") })) defer s.Close() req := httptest.NewRequest("GET", s.URL, nil) req.RequestURI = "" resp, err := http.DefaultClient.Do(req) if err != nil { t.Fatal(err) } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { t.Fatal(resp.StatusCode) } if b, err := ioutil.ReadAll(resp.Body); err != nil { t.Fatal(err) } else if s := string(b); s != "Hello world\n" { t.Fatalf("%q", s) } }