소스 검색

More unit tests for ResponseWriter

Manu Mtz-Almeida 10 년 전
부모
커밋
c61c547539
2개의 변경된 파일6개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      response_writer.go
  2. 3 0
      response_writer_test.go

+ 3 - 1
response_writer.go

@@ -79,7 +79,9 @@ func (w *responseWriter) Written() bool {
 
 // Implements the http.Hijacker interface
 func (w *responseWriter) Hijack() (net.Conn, *bufio.ReadWriter, error) {
-	w.size = 0 // this prevents Gin to write the HTTP headers
+	if w.size < 0 {
+		w.size = 0
+	}
 	return w.ResponseWriter.(http.Hijacker).Hijack()
 }
 

+ 3 - 0
response_writer_test.go

@@ -15,6 +15,9 @@ import (
 var _ ResponseWriter = &responseWriter{}
 var _ http.ResponseWriter = &responseWriter{}
 var _ http.ResponseWriter = ResponseWriter(&responseWriter{})
+var _ http.Hijacker = ResponseWriter(&responseWriter{})
+var _ http.Flusher = ResponseWriter(&responseWriter{})
+var _ http.CloseNotifier = ResponseWriter(&responseWriter{})
 
 func init() {
 	SetMode(TestMode)