summaryrefslogtreecommitdiff
path: root/cli/tests
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests')
-rw-r--r--cli/tests/unit/read_file_test.ts18
-rw-r--r--cli/tests/unit/read_text_file_test.ts18
2 files changed, 36 insertions, 0 deletions
diff --git a/cli/tests/unit/read_file_test.ts b/cli/tests/unit/read_file_test.ts
index 5594eb4ae..5f8ee2c11 100644
--- a/cli/tests/unit/read_file_test.ts
+++ b/cli/tests/unit/read_file_test.ts
@@ -77,3 +77,21 @@ unitTest({ perms: { read: true } }, function readFileSyncLoop(): void {
Deno.readFileSync("cli/tests/fixture.json");
}
});
+
+unitTest(
+ { perms: { read: true } },
+ async function readFileDoesNotLeakResources(): Promise<void> {
+ const resourcesBefore = Deno.resources();
+ await assertThrowsAsync(async () => await Deno.readFile("cli"));
+ assertEquals(resourcesBefore, Deno.resources());
+ },
+);
+
+unitTest(
+ { perms: { read: true } },
+ function readFileSyncDoesNotLeakResources(): void {
+ const resourcesBefore = Deno.resources();
+ assertThrows(() => Deno.readFileSync("cli"));
+ assertEquals(resourcesBefore, Deno.resources());
+ },
+);
diff --git a/cli/tests/unit/read_text_file_test.ts b/cli/tests/unit/read_text_file_test.ts
index dc6a901bb..2223d9c18 100644
--- a/cli/tests/unit/read_text_file_test.ts
+++ b/cli/tests/unit/read_text_file_test.ts
@@ -69,3 +69,21 @@ unitTest({ perms: { read: true } }, function readTextFileSyncLoop(): void {
Deno.readTextFileSync("cli/tests/fixture.json");
}
});
+
+unitTest(
+ { perms: { read: true } },
+ async function readTextFileDoesNotLeakResources(): Promise<void> {
+ const resourcesBefore = Deno.resources();
+ await assertThrowsAsync(async () => await Deno.readTextFile("cli"));
+ assertEquals(resourcesBefore, Deno.resources());
+ },
+);
+
+unitTest(
+ { perms: { read: true } },
+ function readTextFileSyncDoesNotLeakResources(): void {
+ const resourcesBefore = Deno.resources();
+ assertThrows(() => Deno.readTextFileSync("cli"));
+ assertEquals(resourcesBefore, Deno.resources());
+ },
+);