mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-01 12:52:11 +03:00
Integrated into release/v3.8.29 (re-synced: kept only the chatCore split, dropped the stale-merge contamination)
21 lines
1015 B
TypeScript
21 lines
1015 B
TypeScript
import test from "node:test";
|
|
import assert from "node:assert/strict";
|
|
|
|
import { getHeaderValueCaseInsensitive } from "../../open-sse/handlers/chatCore/headers.ts";
|
|
|
|
test("getHeaderValueCaseInsensitive reads Headers and plain objects, case-insensitively", () => {
|
|
const h = new Headers({ "Content-Type": "text/event-stream" });
|
|
assert.equal(getHeaderValueCaseInsensitive(h, "content-type"), "text/event-stream");
|
|
|
|
const obj = { Accept: "text/event-stream", "X-Foo": "bar" };
|
|
assert.equal(getHeaderValueCaseInsensitive(obj, "accept"), "text/event-stream");
|
|
assert.equal(getHeaderValueCaseInsensitive(obj, "x-foo"), "bar");
|
|
|
|
// plain-object values are trimmed
|
|
assert.equal(getHeaderValueCaseInsensitive({ Accept: " v " }, "accept"), "v");
|
|
// missing / non-object -> null
|
|
assert.equal(getHeaderValueCaseInsensitive({ Accept: "x" }, "missing"), null);
|
|
assert.equal(getHeaderValueCaseInsensitive(null, "accept"), null);
|
|
assert.equal(getHeaderValueCaseInsensitive(undefined, "accept"), null);
|
|
});
|