From 2e3d72064af3013116a7555c049511097eb4e801 Mon Sep 17 00:00:00 2001 From: Kohei Ueno Date: Tue, 23 Feb 2021 18:24:59 +0900 Subject: fix: panic caused by Deno.env.set("", "") (#9583) --- cli/tests/unit/os_test.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'cli/tests/unit/os_test.ts') diff --git a/cli/tests/unit/os_test.ts b/cli/tests/unit/os_test.ts index 9a2d33f53..5786ad32e 100644 --- a/cli/tests/unit/os_test.ts +++ b/cli/tests/unit/os_test.ts @@ -27,6 +27,21 @@ unitTest({ perms: { env: true } }, function deleteEnv(): void { assertEquals(Deno.env.get("TEST_VAR"), undefined); }); +unitTest({ perms: { env: true } }, function avoidEmptyNamedEnv(): void { + assertThrows(() => Deno.env.set("", "v"), TypeError); + assertThrows(() => Deno.env.set("a=a", "v"), TypeError); + assertThrows(() => Deno.env.set("a\0a", "v"), TypeError); + assertThrows(() => Deno.env.set("TEST_VAR", "v\0v"), TypeError); + + assertThrows(() => Deno.env.get(""), TypeError); + assertThrows(() => Deno.env.get("a=a"), TypeError); + assertThrows(() => Deno.env.get("a\0a"), TypeError); + + assertThrows(() => Deno.env.delete(""), TypeError); + assertThrows(() => Deno.env.delete("a=a"), TypeError); + assertThrows(() => Deno.env.delete("a\0a"), TypeError); +}); + unitTest(function envPermissionDenied1(): void { assertThrows(() => { Deno.env.toObject(); -- cgit v1.2.3