|
@@ -148,3 +148,46 @@ func TestTraceResponseWriter(t *testing.T) {
|
|
})
|
|
})
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+func TestTraceHandler_traceResponseWriter(t *testing.T) {
|
|
|
|
+ writer := &traceResponseWriter{
|
|
|
|
+ w: httptest.NewRecorder(),
|
|
|
|
+ }
|
|
|
|
+ assert.NotPanics(t, func() {
|
|
|
|
+ writer.Hijack()
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ writer = &traceResponseWriter{
|
|
|
|
+ w: mockedHijackable{httptest.NewRecorder()},
|
|
|
|
+ }
|
|
|
|
+ assert.NotPanics(t, func() {
|
|
|
|
+ writer.Hijack()
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ writer = &traceResponseWriter{
|
|
|
|
+ w: httptest.NewRecorder(),
|
|
|
|
+ }
|
|
|
|
+ writer.WriteHeader(http.StatusBadRequest)
|
|
|
|
+ assert.NotNil(t, writer.Header())
|
|
|
|
+
|
|
|
|
+ writer = &traceResponseWriter{
|
|
|
|
+ w: httptest.NewRecorder(),
|
|
|
|
+ }
|
|
|
|
+ assert.NotPanics(t, func() {
|
|
|
|
+ writer.Flush()
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ writer = &traceResponseWriter{
|
|
|
|
+ w: mockedFlusher{httptest.NewRecorder()},
|
|
|
|
+ }
|
|
|
|
+ assert.NotPanics(t, func() {
|
|
|
|
+ writer.Flush()
|
|
|
|
+ })
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+type mockedFlusher struct {
|
|
|
|
+ *httptest.ResponseRecorder
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func (m mockedFlusher) Flush() {
|
|
|
|
+}
|