예시func TestHandlerWriteHeader(t *testing.T) {
handler := func(w http.ResponseWriter, r *http.Request) {
_, _ = w.Write([]byte("Bad Request"))
w.WriteHeader(http.StatusBadRequest)
}
r := httptest.NewRequest(http.MethodGet, "http://test", nil)
w := httptest.NewRecorder()
handler(w, r)
t.Logf("Response status: %q", w.Result().Status)
handler = func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusBadRequest)
_, _ = w.Write([]byte("Bad Request"))
}
r = httptest.NewRequest(http.MethodGet, "http://test", nil)
w = httptest.NewRecorder()
handler(w, r)
t.Logf("Response status: %q", w.Result().Status)
}
=== RUN TestHandlerWriteHeader
first_write_body_test.go:19: Response status: "200 OK"
first_write_body_test.go:29: Response status: "400 Bad Request"