Skip to content

Commit 06c4364

Browse files
committed
chore: add tests
1 parent 9d566e2 commit 06c4364

File tree

1 file changed

+41
-43
lines changed

1 file changed

+41
-43
lines changed

src/headers.test.ts

Lines changed: 41 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -9,54 +9,52 @@ const logger = {
99
},
1010
}
1111

12-
describe("getHeaders", () => {
13-
it("should return no headers", async () => {
14-
await expect(getHeaders(undefined, undefined, logger)).resolves.toStrictEqual({})
15-
await expect(getHeaders("localhost", undefined, logger)).resolves.toStrictEqual({})
16-
await expect(getHeaders(undefined, "command", logger)).resolves.toStrictEqual({})
17-
await expect(getHeaders("localhost", "", logger)).resolves.toStrictEqual({})
18-
await expect(getHeaders("", "command", logger)).resolves.toStrictEqual({})
19-
await expect(getHeaders("localhost", " ", logger)).resolves.toStrictEqual({})
20-
await expect(getHeaders(" ", "command", logger)).resolves.toStrictEqual({})
21-
})
12+
it("should return no headers", async () => {
13+
await expect(getHeaders(undefined, undefined, logger)).resolves.toStrictEqual({})
14+
await expect(getHeaders("localhost", undefined, logger)).resolves.toStrictEqual({})
15+
await expect(getHeaders(undefined, "command", logger)).resolves.toStrictEqual({})
16+
await expect(getHeaders("localhost", "", logger)).resolves.toStrictEqual({})
17+
await expect(getHeaders("", "command", logger)).resolves.toStrictEqual({})
18+
await expect(getHeaders("localhost", " ", logger)).resolves.toStrictEqual({})
19+
await expect(getHeaders(" ", "command", logger)).resolves.toStrictEqual({})
20+
})
2221

23-
it("should return headers", async () => {
24-
await expect(getHeaders("localhost", "printf 'foo=bar\\nbaz=qux'", logger)).resolves.toStrictEqual({
25-
foo: "bar",
26-
baz: "qux",
27-
})
28-
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\nbaz=qux'", logger)).resolves.toStrictEqual({
29-
foo: "bar",
30-
baz: "qux",
31-
})
32-
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\n'", logger)).resolves.toStrictEqual({ foo: "bar" })
33-
await expect(getHeaders("localhost", "printf 'foo=bar'", logger)).resolves.toStrictEqual({ foo: "bar" })
34-
await expect(getHeaders("localhost", "printf 'foo=bar='", logger)).resolves.toStrictEqual({ foo: "bar=" })
35-
await expect(getHeaders("localhost", "printf 'foo=bar=baz'", logger)).resolves.toStrictEqual({ foo: "bar=baz" })
36-
await expect(getHeaders("localhost", "printf 'foo='", logger)).resolves.toStrictEqual({ foo: "" })
22+
it("should return headers", async () => {
23+
await expect(getHeaders("localhost", "printf 'foo=bar\\nbaz=qux'", logger)).resolves.toStrictEqual({
24+
foo: "bar",
25+
baz: "qux",
3726
})
38-
39-
it("should error on malformed or empty lines", async () => {
40-
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\n\\r\\n'", logger)).rejects.toMatch(/Malformed/)
41-
await expect(getHeaders("localhost", "printf '\\r\\nfoo=bar'", logger)).rejects.toMatch(/Malformed/)
42-
await expect(getHeaders("localhost", "printf '=foo'", logger)).rejects.toMatch(/Malformed/)
43-
await expect(getHeaders("localhost", "printf 'foo'", logger)).rejects.toMatch(/Malformed/)
44-
await expect(getHeaders("localhost", "printf ' =foo'", logger)).rejects.toMatch(/Malformed/)
45-
await expect(getHeaders("localhost", "printf 'foo =bar'", logger)).rejects.toMatch(/Malformed/)
46-
await expect(getHeaders("localhost", "printf 'foo foo=bar'", logger)).rejects.toMatch(/Malformed/)
47-
await expect(getHeaders("localhost", "printf ''", logger)).rejects.toMatch(/Malformed/)
27+
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\nbaz=qux'", logger)).resolves.toStrictEqual({
28+
foo: "bar",
29+
baz: "qux",
4830
})
31+
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\n'", logger)).resolves.toStrictEqual({ foo: "bar" })
32+
await expect(getHeaders("localhost", "printf 'foo=bar'", logger)).resolves.toStrictEqual({ foo: "bar" })
33+
await expect(getHeaders("localhost", "printf 'foo=bar='", logger)).resolves.toStrictEqual({ foo: "bar=" })
34+
await expect(getHeaders("localhost", "printf 'foo=bar=baz'", logger)).resolves.toStrictEqual({ foo: "bar=baz" })
35+
await expect(getHeaders("localhost", "printf 'foo='", logger)).resolves.toStrictEqual({ foo: "" })
36+
})
4937

50-
it("should have access to environment variables", async () => {
51-
const coderUrl = "dev.coder.com"
52-
await expect(
53-
getHeaders(coderUrl, os.platform() === "win32" ? "printf url=%CODER_URL%" : "printf url=$CODER_URL", logger),
54-
).resolves.toStrictEqual({ url: coderUrl })
55-
})
38+
it("should error on malformed or empty lines", async () => {
39+
await expect(getHeaders("localhost", "printf 'foo=bar\\r\\n\\r\\n'", logger)).rejects.toMatch(/Malformed/)
40+
await expect(getHeaders("localhost", "printf '\\r\\nfoo=bar'", logger)).rejects.toMatch(/Malformed/)
41+
await expect(getHeaders("localhost", "printf '=foo'", logger)).rejects.toMatch(/Malformed/)
42+
await expect(getHeaders("localhost", "printf 'foo'", logger)).rejects.toMatch(/Malformed/)
43+
await expect(getHeaders("localhost", "printf ' =foo'", logger)).rejects.toMatch(/Malformed/)
44+
await expect(getHeaders("localhost", "printf 'foo =bar'", logger)).rejects.toMatch(/Malformed/)
45+
await expect(getHeaders("localhost", "printf 'foo foo=bar'", logger)).rejects.toMatch(/Malformed/)
46+
await expect(getHeaders("localhost", "printf ''", logger)).rejects.toMatch(/Malformed/)
47+
})
5648

57-
it("should error on non-zero exit", async () => {
58-
await expect(getHeaders("localhost", "exit 10", logger)).rejects.toMatch(/exited unexpectedly with code 10/)
59-
})
49+
it("should have access to environment variables", async () => {
50+
const coderUrl = "dev.coder.com"
51+
await expect(
52+
getHeaders(coderUrl, os.platform() === "win32" ? "printf url=%CODER_URL%" : "printf url=$CODER_URL", logger),
53+
).resolves.toStrictEqual({ url: coderUrl })
54+
})
55+
56+
it("should error on non-zero exit", async () => {
57+
await expect(getHeaders("localhost", "exit 10", logger)).rejects.toMatch(/exited unexpectedly with code 10/)
6058
})
6159

6260
describe("getHeaderCommand", () => {

0 commit comments

Comments
 (0)