import { assertEquals, assertObjectMatch } from "jsr:@std/assert"
const
runtime_id = identifyCurrentRuntime(),
my_dir = new URL(import.meta.resolve("../temp/a/b/c/")),
my_dir2 = new URL(import.meta.resolve("../temp/a/"))
await ensureDir(runtime_id, my_dir)
// the directory now exists
assertObjectMatch((await statEntry(runtime_id, my_dir))!, {
isFile: false,
isDirectory: true,
isSymlink: false,
})
// deleting the base directory (recursively)
assertEquals(await removeEntry(runtime_id, my_dir2, { recursive: true }), true)
// the directory no longer exists
assertEquals(await statEntry(runtime_id, my_dir), undefined)
assertEquals(await statEntry(runtime_id, my_dir2), undefined)
creates a nested directory if it does not already exist. only supported on system runtime (i.e. RUNTIME.DENO, RUNTIME.BUN, or RUNTIME.NODE).