diff options
author | kinggo <lilong.21@bytedance.com> | 2022-10-30 00:57:40 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-29 18:57:40 +0200 |
commit | 3963a79a64ac0c35c38274516cdc1080a326102a (patch) | |
tree | ab2b399bbcff5125e1e2d4d9479ae19842457c1d /header_test.go | |
parent | fix: (#1410) (diff) | |
download | fasthttp-3963a79a64ac0c35c38274516cdc1080a326102a.tar.gz fasthttp-3963a79a64ac0c35c38274516cdc1080a326102a.tar.bz2 fasthttp-3963a79a64ac0c35c38274516cdc1080a326102a.zip |
feat: add PeekKeys and PeekTrailerKeys (#1405)
* feat: add PeekKeys and PeekTrailerKeys
* Improve warning
Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
Diffstat (limited to 'header_test.go')
-rw-r--r-- | header_test.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/header_test.go b/header_test.go index fdefc3c..7d29425 100644 --- a/header_test.go +++ b/header_test.go @@ -2935,3 +2935,43 @@ func expectResponseHeaderAll(t *testing.T, h *ResponseHeader, key string, expect t.Fatalf("Unexpected value for key %q: %q. Expected %q", key, h.PeekAll(key), expectedValue) } } + +func TestRequestHeader_Keys(t *testing.T) { + h := &RequestHeader{} + h.Add(HeaderConnection, "keep-alive") + h.Add("Content-Type", "aaa") + err := h.SetTrailer("aaa,bbb,ccc") + if err != nil { + t.Fatal(err) + } + actualKeys := h.PeekKeys() + expectedKeys := [][]byte{s2b("keep-alive"), s2b("aaa")} + if reflect.DeepEqual(actualKeys, expectedKeys) { + t.Fatalf("Unexpected value %q. Expected %q", actualKeys, expectedKeys) + } + actualTrailerKeys := h.PeekTrailerKeys() + expectedTrailerKeys := [][]byte{s2b("aaa"), s2b("bbb"), s2b("ccc")} + if reflect.DeepEqual(actualTrailerKeys, expectedTrailerKeys) { + t.Fatalf("Unexpected value %q. Expected %q", actualTrailerKeys, expectedTrailerKeys) + } +} + +func TestResponseHeader_Keys(t *testing.T) { + h := &ResponseHeader{} + h.Add(HeaderConnection, "keep-alive") + h.Add("Content-Type", "aaa") + err := h.SetTrailer("aaa,bbb,ccc") + if err != nil { + t.Fatal(err) + } + actualKeys := h.PeekKeys() + expectedKeys := [][]byte{s2b("keep-alive"), s2b("aaa")} + if reflect.DeepEqual(actualKeys, expectedKeys) { + t.Fatalf("Unexpected value %q. Expected %q", actualKeys, expectedKeys) + } + actualTrailerKeys := h.PeekTrailerKeys() + expectedTrailerKeys := [][]byte{s2b("aaa"), s2b("bbb"), s2b("ccc")} + if reflect.DeepEqual(actualTrailerKeys, expectedTrailerKeys) { + t.Fatalf("Unexpected value %q. Expected %q", actualTrailerKeys, expectedTrailerKeys) + } +} |