diff --git a/recovery_test.go b/recovery_test.go index 028c4ad6..8749daba 100644 --- a/recovery_test.go +++ b/recovery_test.go @@ -293,6 +293,16 @@ func TestSecureRequestDump(t *testing.T) { wantContains: "Authorization: *", wantNotContain: "token123", }, + { + name: "Proxy-Authorization header", + req: func() *http.Request { + r, _ := http.NewRequest(http.MethodGet, "http://example.com", nil) + r.Header.Set("Proxy-Authorization", "Basic cHJveHk6c2VjcmV0") + return r + }(), + wantContains: "Proxy-Authorization: *", + wantNotContain: "Basic cHJveHk6c2VjcmV0", + }, { name: "No Authorization header", req: func() *http.Request { diff --git a/render/render_test.go b/render/render_test.go index f63878b9..85dca068 100644 --- a/render/render_test.go +++ b/render/render_test.go @@ -261,6 +261,16 @@ func TestRenderAsciiJSON(t *testing.T) { assert.Equal(t, "3.1415926", w2.Body.String()) } +func TestRenderAsciiJSONSupplementaryUnicode(t *testing.T) { + w := httptest.NewRecorder() + data := map[string]string{"emoji": "😀"} + + err := (AsciiJSON{data}).Render(w) + require.NoError(t, err) + // U+1F600 must be encoded as UTF-16 surrogate pair per RFC 8259 + assert.Equal(t, "{\"emoji\":\"\\ud83d\\ude00\"}", w.Body.String()) +} + func TestRenderAsciiJSONFail(t *testing.T) { w := httptest.NewRecorder() data := make(chan int)