mirror of
				https://github.com/labstack/echo.git
				synced 2025-10-30 23:57:38 +02:00 
			
		
		
		
	add supprt for go1.20 http.rwUnwrapper
This commit is contained in:
		| @@ -94,6 +94,13 @@ func (r *Response) Hijack() (net.Conn, *bufio.ReadWriter, error) { | ||||
| 	return r.Writer.(http.Hijacker).Hijack() | ||||
| } | ||||
|  | ||||
| // Unwrap returns the original http.ResponseWriter. | ||||
| // ResponseController can be used to access the original http.ResponseWriter. | ||||
| // See [https://go.dev/blog/go1.20] | ||||
| func (r *Response) Unwrap() http.ResponseWriter { | ||||
| 	return r.Writer | ||||
| } | ||||
|  | ||||
| func (r *Response) reset(w http.ResponseWriter) { | ||||
| 	r.beforeFuncs = nil | ||||
| 	r.afterFuncs = nil | ||||
|   | ||||
| @@ -72,3 +72,11 @@ func TestResponse_ChangeStatusCodeBeforeWrite(t *testing.T) { | ||||
|  | ||||
| 	assert.Equal(t, http.StatusOK, rec.Code) | ||||
| } | ||||
|  | ||||
| func TestResponse_Unwrap(t *testing.T) { | ||||
| 	e := New() | ||||
| 	rec := httptest.NewRecorder() | ||||
| 	res := &Response{echo: e, Writer: rec} | ||||
|  | ||||
| 	assert.Equal(t, rec, res.Unwrap()) | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user