diff --git a/ext/node/polyfills/_fs/_fs_watch.ts b/ext/node/polyfills/_fs/_fs_watch.ts index 78903cd553..e94818da9c 100644 --- a/ext/node/polyfills/_fs/_fs_watch.ts +++ b/ext/node/polyfills/_fs/_fs_watch.ts @@ -211,7 +211,7 @@ export function watchFile( statWatchers.set(watchPath, stat); } - stat.addListener("change", listener!); + stat.addListener("change", handler); return stat; } diff --git a/tests/unit_node/_fs/_fs_watch_test.ts b/tests/unit_node/_fs/_fs_watch_test.ts index 01df80f97f..01236a493b 100644 --- a/tests/unit_node/_fs/_fs_watch_test.ts +++ b/tests/unit_node/_fs/_fs_watch_test.ts @@ -1,5 +1,5 @@ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. -import { watch } from "node:fs"; +import { unwatchFile, watch, watchFile } from "node:fs"; import { assertEquals } from "@std/assert/mod.ts"; function wait(time: number) { @@ -25,3 +25,16 @@ Deno.test({ assertEquals(result.length >= 1, true); }, }); + +Deno.test({ + name: "watching a file with options", + async fn() { + const file = Deno.makeTempFileSync(); + watchFile( + file, + () => {}, + ); + await wait(100); + unwatchFile(file); + }, +});