summaryrefslogtreecommitdiff
path: root/cli/tests/unit/remove_test.ts
diff options
context:
space:
mode:
authoruki00a <uki00a@gmail.com>2020-05-31 03:48:26 +0900
committerGitHub <noreply@github.com>2020-05-30 14:48:26 -0400
commit64bd2768f7794408a9e8b7ba14edc990f3e2d0de (patch)
treee3d483984049c139375c3ec2042cb5a6f1f519f6 /cli/tests/unit/remove_test.ts
parent550556e948e750dc64039dcffd311752cf8312fd (diff)
fix(#4850): Deno.remove() fails to remove unix socket (#5967)
Diffstat (limited to 'cli/tests/unit/remove_test.ts')
-rw-r--r--cli/tests/unit/remove_test.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/cli/tests/unit/remove_test.ts b/cli/tests/unit/remove_test.ts
index 35e5c821e..5d293ec51 100644
--- a/cli/tests/unit/remove_test.ts
+++ b/cli/tests/unit/remove_test.ts
@@ -460,6 +460,31 @@ unitTest({ perms: { write: false } }, async function removeAllPerm(): Promise<
assertEquals(err.name, "PermissionDenied");
});
+unitTest(
+ {
+ ignore: Deno.build.os === "windows",
+ perms: { write: true, read: true },
+ },
+ async function removeUnixSocketSuccess(): Promise<void> {
+ for (const method of ["remove", "removeSync"] as const) {
+ // MAKE TEMPORARY UNIX SOCKET
+ const path = Deno.makeTempDirSync() + "/test.sock";
+ const listener = Deno.listen({ transport: "unix", path });
+ listener.close();
+ Deno.statSync(path); // check if unix socket exists
+
+ await Deno[method](path);
+ let err;
+ try {
+ Deno.statSync(path);
+ } catch (e) {
+ err = e;
+ }
+ assert(err instanceof Deno.errors.NotFound);
+ }
+ }
+);
+
if (Deno.build.os === "windows") {
unitTest(
{ perms: { run: true, write: true, read: true } },