diff options
| author | Asher Gomez <ashersaupingomez@gmail.com> | 2024-01-24 10:27:29 +1100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-24 00:27:29 +0100 |
| commit | 947ce41e99637dae4cf46126b8bb2d4107fb9913 (patch) | |
| tree | 094cdca89b38d358bb801702b4caf5dcb6374c80 /cli/tests/unit_node | |
| parent | 4eedac3604dad9f366d28868077eb02eddc22661 (diff) | |
feat: deprecate `Deno.resources()` (#22059)
Most uses of `Deno.resources()` within tests, as they previously checked
for leaked resources. This is not needed as the test runner does this
automatically. Other internal uses of this API have been replaced with
the internal `Deno[Deno.internal].core.resources()`.
Diffstat (limited to 'cli/tests/unit_node')
| -rw-r--r-- | cli/tests/unit_node/_fs/_fs_appendFile_test.ts | 20 | ||||
| -rw-r--r-- | cli/tests/unit_node/_fs/_fs_close_test.ts | 9 | ||||
| -rw-r--r-- | cli/tests/unit_node/_fs/_fs_open_test.ts | 6 | ||||
| -rw-r--r-- | cli/tests/unit_node/_fs/_fs_rm_test.ts | 33 | ||||
| -rw-r--r-- | cli/tests/unit_node/_fs/_fs_rmdir_test.ts | 32 |
5 files changed, 16 insertions, 84 deletions
diff --git a/cli/tests/unit_node/_fs/_fs_appendFile_test.ts b/cli/tests/unit_node/_fs/_fs_appendFile_test.ts index 33c99414f..e70d3401f 100644 --- a/cli/tests/unit_node/_fs/_fs_appendFile_test.ts +++ b/cli/tests/unit_node/_fs/_fs_appendFile_test.ts @@ -97,7 +97,6 @@ Deno.test({ Deno.test({ name: "Async: Data is written to passed in file path", async fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); await new Promise<void>((resolve, reject) => { appendFile("_fs_appendFile_test_file.txt", "hello world", (err) => { if (err) reject(err); @@ -105,7 +104,6 @@ Deno.test({ }); }) .then(async () => { - assertEquals(Deno.resources(), openResourcesBeforeAppend); const data = await Deno.readFile("_fs_appendFile_test_file.txt"); assertEquals(decoder.decode(data), "hello world"); }, (err) => { @@ -120,7 +118,6 @@ Deno.test({ Deno.test({ name: "Async: Data is written to passed in URL", async fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); const fileURL = new URL("_fs_appendFile_test_file.txt", import.meta.url); await new Promise<void>((resolve, reject) => { appendFile(fileURL, "hello world", (err) => { @@ -129,7 +126,6 @@ Deno.test({ }); }) .then(async () => { - assertEquals(Deno.resources(), openResourcesBeforeAppend); const data = await Deno.readFile(fromFileUrl(fileURL)); assertEquals(decoder.decode(data), "hello world"); }, (err) => { @@ -145,7 +141,6 @@ Deno.test({ name: "Async: Callback is made with error if attempting to append data to an existing file with 'ax' flag", async fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); const tempFile: string = await Deno.makeTempFile(); await new Promise<void>((resolve, reject) => { appendFile(tempFile, "hello world", { flag: "ax" }, (err) => { @@ -153,11 +148,8 @@ Deno.test({ else resolve(); }); }) - .then(() => { - fail("Expected error to be thrown"); - }, () => { - assertEquals(Deno.resources(), openResourcesBeforeAppend); - }) + .then(() => fail("Expected error to be thrown")) + .catch(() => {}) .finally(async () => { await Deno.remove(tempFile); }); @@ -184,9 +176,7 @@ Deno.test({ Deno.test({ name: "Sync: Data is written to passed in file path", fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); appendFileSync("_fs_appendFile_test_file_sync.txt", "hello world"); - assertEquals(Deno.resources(), openResourcesBeforeAppend); const data = Deno.readFileSync("_fs_appendFile_test_file_sync.txt"); assertEquals(decoder.decode(data), "hello world"); Deno.removeSync("_fs_appendFile_test_file_sync.txt"); @@ -197,14 +187,12 @@ Deno.test({ name: "Sync: error thrown if attempting to append data to an existing file with 'ax' flag", fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); const tempFile: string = Deno.makeTempFileSync(); assertThrows( () => appendFileSync(tempFile, "hello world", { flag: "ax" }), Error, "", ); - assertEquals(Deno.resources(), openResourcesBeforeAppend); Deno.removeSync(tempFile); }, }); @@ -212,10 +200,8 @@ Deno.test({ Deno.test({ name: "Sync: Data is written in Uint8Array to passed in file path", fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); const testData = new TextEncoder().encode("hello world"); appendFileSync("_fs_appendFile_test_file_sync.txt", testData); - assertEquals(Deno.resources(), openResourcesBeforeAppend); const data = Deno.readFileSync("_fs_appendFile_test_file_sync.txt"); assertEquals(data, testData); Deno.removeSync("_fs_appendFile_test_file_sync.txt"); @@ -225,7 +211,6 @@ Deno.test({ Deno.test({ name: "Async: Data is written in Uint8Array to passed in file path", async fn() { - const openResourcesBeforeAppend: Deno.ResourceMap = Deno.resources(); const testData = new TextEncoder().encode("hello world"); await new Promise<void>((resolve, reject) => { appendFile("_fs_appendFile_test_file.txt", testData, (err) => { @@ -234,7 +219,6 @@ Deno.test({ }); }) .then(async () => { - assertEquals(Deno.resources(), openResourcesBeforeAppend); const data = await Deno.readFile("_fs_appendFile_test_file.txt"); assertEquals(data, testData); }, (err) => { diff --git a/cli/tests/unit_node/_fs/_fs_close_test.ts b/cli/tests/unit_node/_fs/_fs_close_test.ts index 22b5a4da9..fb9ce05c3 100644 --- a/cli/tests/unit_node/_fs/_fs_close_test.ts +++ b/cli/tests/unit_node/_fs/_fs_close_test.ts @@ -13,18 +13,13 @@ Deno.test({ const tempFile: string = await Deno.makeTempFile(); const file: Deno.FsFile = await Deno.open(tempFile); - assert(Deno.resources()[file.rid]); await new Promise<void>((resolve, reject) => { close(file.rid, (err) => { if (err !== null) reject(); else resolve(); }); }) - .then(() => { - assert(!Deno.resources()[file.rid]); - }, () => { - fail("No error expected"); - }) + .catch(() => fail("No error expected")) .finally(async () => { await Deno.remove(tempFile); }); @@ -66,9 +61,7 @@ Deno.test({ const tempFile: string = Deno.makeTempFileSync(); const file: Deno.FsFile = Deno.openSync(tempFile); - assert(Deno.resources()[file.rid]); closeSync(file.rid); - assert(!Deno.resources()[file.rid]); Deno.removeSync(tempFile); }, }); diff --git a/cli/tests/unit_node/_fs/_fs_open_test.ts b/cli/tests/unit_node/_fs/_fs_open_test.ts index af31d24a3..fa79aa68f 100644 --- a/cli/tests/unit_node/_fs/_fs_open_test.ts +++ b/cli/tests/unit_node/_fs/_fs_open_test.ts @@ -10,7 +10,6 @@ import { O_WRONLY, } from "node:constants"; import { - assert, assertEquals, assertThrows, fail, @@ -35,7 +34,6 @@ Deno.test({ }) .then((fd) => { fd1 = fd; - assert(Deno.resources()[fd], `${fd}`); }, () => fail()) .finally(() => closeSync(fd1)); }, @@ -46,7 +44,6 @@ Deno.test({ fn() { const file = Deno.makeTempFileSync(); const fd = openSync(file, "r"); - assert(Deno.resources()[fd]); closeSync(fd); }, }); @@ -58,7 +55,6 @@ Deno.test({ const fd = openSync(file, "a"); assertEquals(typeof fd, "number"); assertEquals(existsSync(file), true); - assert(Deno.resources()[fd]); closeSync(fd); }, }); @@ -225,7 +221,6 @@ Deno.test({ const fd = openSync(file, O_APPEND | O_CREAT | O_WRONLY); assertEquals(typeof fd, "number"); assertEquals(existsSync(file), true); - assert(Deno.resources()[fd]); closeSync(fd); }, }); @@ -403,7 +398,6 @@ Deno.test("[std/node/fs] open callback isn't called twice if error is thrown", a fn() { const file = Deno.makeTempFileSync(); const fd = openSync(file, 0); - assert(Deno.resources()[fd]); closeSync(fd); }, }); diff --git a/cli/tests/unit_node/_fs/_fs_rm_test.ts b/cli/tests/unit_node/_fs/_fs_rm_test.ts index 10e300684..881ee1c4f 100644 --- a/cli/tests/unit_node/_fs/_fs_rm_test.ts +++ b/cli/tests/unit_node/_fs/_fs_rm_test.ts @@ -6,7 +6,7 @@ import { fail, } from "../../../../test_util/std/assert/mod.ts"; import { rm, rmSync } from "node:fs"; -import { closeSync, existsSync } from "node:fs"; +import { existsSync } from "node:fs"; import { join } from "../../../../test_util/std/path/mod.ts"; Deno.test({ @@ -26,27 +26,14 @@ Deno.test({ }, }); -function closeRes(before: Deno.ResourceMap, after: Deno.ResourceMap) { - for (const key in after) { - if (!before[key]) { - try { - closeSync(Number(key)); - } catch (error) { - return error; - } - } - } -} - Deno.test({ name: "ASYNC: removing non-empty folder", async fn() { - const rBefore = Deno.resources(); const dir = Deno.makeTempDirSync(); - Deno.createSync(join(dir, "file1.txt")); - Deno.createSync(join(dir, "file2.txt")); + using _file1 = Deno.createSync(join(dir, "file1.txt")); + using _file2 = Deno.createSync(join(dir, "file2.txt")); Deno.mkdirSync(join(dir, "some_dir")); - Deno.createSync(join(dir, "some_dir", "file.txt")); + using _file = Deno.createSync(join(dir, "some_dir", "file.txt")); await new Promise<void>((resolve, reject) => { rm(dir, { recursive: true }, (err) => { if (err) reject(err); @@ -56,8 +43,6 @@ Deno.test({ .then(() => assertEquals(existsSync(dir), false), () => fail()) .finally(() => { if (existsSync(dir)) Deno.removeSync(dir, { recursive: true }); - const rAfter = Deno.resources(); - closeRes(rBefore, rAfter); }); }, ignore: Deno.build.os === "windows", @@ -116,17 +101,13 @@ Deno.test({ Deno.test({ name: "SYNC: removing non-empty folder", fn() { - const rBefore = Deno.resources(); const dir = Deno.makeTempDirSync(); - Deno.createSync(join(dir, "file1.txt")); - Deno.createSync(join(dir, "file2.txt")); + using _file1 = Deno.createSync(join(dir, "file1.txt")); + using _file2 = Deno.createSync(join(dir, "file2.txt")); Deno.mkdirSync(join(dir, "some_dir")); - Deno.createSync(join(dir, "some_dir", "file.txt")); + using _file = Deno.createSync(join(dir, "some_dir", "file.txt")); rmSync(dir, { recursive: true }); assertEquals(existsSync(dir), false); - // closing resources - const rAfter = Deno.resources(); - closeRes(rBefore, rAfter); }, ignore: Deno.build.os === "windows", }); diff --git a/cli/tests/unit_node/_fs/_fs_rmdir_test.ts b/cli/tests/unit_node/_fs/_fs_rmdir_test.ts index c0e7df865..1fe9e499c 100644 --- a/cli/tests/unit_node/_fs/_fs_rmdir_test.ts +++ b/cli/tests/unit_node/_fs/_fs_rmdir_test.ts @@ -1,7 +1,6 @@ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. import { assertEquals, fail } from "../../../../test_util/std/assert/mod.ts"; import { rmdir, rmdirSync } from "node:fs"; -import { closeSync } from "node:fs"; import { existsSync } from "node:fs"; import { join } from "../../../../test_util/std/path/mod.ts"; import { assertCallbackErrorUncaught } from "../_test_utils.ts"; @@ -32,27 +31,14 @@ Deno.test({ }, }); -function closeRes(before: Deno.ResourceMap, after: Deno.ResourceMap) { - for (const key in after) { - if (!before[key]) { - try { - closeSync(Number(key)); - } catch (error) { - return error; - } - } - } -} - Deno.test({ name: "ASYNC: removing non-empty folder", async fn() { - const rBefore = Deno.resources(); const dir = Deno.makeTempDirSync(); - Deno.createSync(join(dir, "file1.txt")); - Deno.createSync(join(dir, "file2.txt")); + using _file1 = Deno.createSync(join(dir, "file1.txt")); + using _file2 = Deno.createSync(join(dir, "file2.txt")); Deno.mkdirSync(join(dir, "some_dir")); - Deno.createSync(join(dir, "some_dir", "file.txt")); + using _file = Deno.createSync(join(dir, "some_dir", "file.txt")); await new Promise<void>((resolve, reject) => { rmdir(dir, { recursive: true }, (err) => { if (err) reject(err); @@ -62,8 +48,6 @@ Deno.test({ .then(() => assertEquals(existsSync(dir), false), () => fail()) .finally(() => { if (existsSync(dir)) Deno.removeSync(dir, { recursive: true }); - const rAfter = Deno.resources(); - closeRes(rBefore, rAfter); }); }, ignore: Deno.build.os === "windows", @@ -72,17 +56,13 @@ Deno.test({ Deno.test({ name: "SYNC: removing non-empty folder", fn() { - const rBefore = Deno.resources(); const dir = Deno.makeTempDirSync(); - Deno.createSync(join(dir, "file1.txt")); - Deno.createSync(join(dir, "file2.txt")); + using _file1 = Deno.createSync(join(dir, "file1.txt")); + using _file2 = Deno.createSync(join(dir, "file2.txt")); Deno.mkdirSync(join(dir, "some_dir")); - Deno.createSync(join(dir, "some_dir", "file.txt")); + using _file = Deno.createSync(join(dir, "some_dir", "file.txt")); rmdirSync(dir, { recursive: true }); assertEquals(existsSync(dir), false); - // closing resources - const rAfter = Deno.resources(); - closeRes(rBefore, rAfter); }, ignore: Deno.build.os === "windows", }); |
