mirror of
https://github.com/denoland/std.git
synced 2024-11-22 04:59:05 +00:00
82 lines
1.6 KiB
TypeScript
82 lines
1.6 KiB
TypeScript
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
|
|
import { assertEquals } from "@std/assert";
|
|
import { stringify } from "./stringify.ts";
|
|
|
|
Deno.test("stringify()", async (t) => {
|
|
await t.step(
|
|
"basic",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "BASIC": "basic" }),
|
|
`BASIC=basic`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"comment",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "#COMMENT": "comment" }),
|
|
``,
|
|
),
|
|
);
|
|
await t.step(
|
|
"single quote",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "QUOTED_SINGLE": "single quoted" }),
|
|
`QUOTED_SINGLE='single quoted'`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"multiline",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "MULTILINE": "hello\nworld" }),
|
|
`MULTILINE="hello\\nworld"`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"whitespace",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "WHITESPACE": " whitespace " }),
|
|
`WHITESPACE=' whitespace '`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"equals",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "EQUALS": "equ==als" }),
|
|
`EQUALS='equ==als'`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"number",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "THE_ANSWER": "42" }),
|
|
`THE_ANSWER=42`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"undefined",
|
|
() =>
|
|
assertEquals(
|
|
stringify(
|
|
{ "UNDEFINED": undefined } as unknown as Record<string, string>,
|
|
),
|
|
`UNDEFINED=`,
|
|
),
|
|
);
|
|
await t.step(
|
|
"null",
|
|
() =>
|
|
assertEquals(
|
|
stringify({ "NULL": null } as unknown as Record<string, string>),
|
|
`NULL=`,
|
|
),
|
|
);
|
|
});
|