1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-26 00:59:24 -05:00
denoland-deno/std/node/_fs/_fs_watch_test.ts

32 lines
835 B
TypeScript

import { watch } from "./_fs_watch.ts";
import { assertEquals, fail } from "../../testing/asserts.ts";
function wait(time: number) {
return new Promise((resolve) => {
setTimeout(resolve, time);
});
}
Deno.test({
name: "watching a file",
async fn() {
const file = Deno.makeTempFileSync();
const result: Array<[string, string]> = [];
await new Promise((resolve) => {
const watcher = watch(
file,
(eventType, filename) => result.push([eventType, filename]),
);
wait(100)
.then(() => Deno.writeTextFileSync(file, "something"))
.then(() => wait(100))
.then(() => watcher.close())
.then(() => wait(100))
.then(resolve);
})
.then(() => {
assertEquals(result.length >= 1, true);
})
.catch(() => fail());
},
});