From 5d9bb8b4b042f4d4fbbe61b31a50a26db7f1ae63 Mon Sep 17 00:00:00 2001 From: Leo Kettmeir Date: Tue, 13 Dec 2022 05:12:49 +0100 Subject: feat: support `createNew` in `Deno.writeFile` (#17023) --- cli/tests/unit/write_file_test.ts | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'cli/tests') diff --git a/cli/tests/unit/write_file_test.ts b/cli/tests/unit/write_file_test.ts index 9cbc0b272..945807b3f 100644 --- a/cli/tests/unit/write_file_test.ts +++ b/cli/tests/unit/write_file_test.ts @@ -96,6 +96,20 @@ Deno.test( }, ); +Deno.test( + { permissions: { read: true, write: true } }, + function writeFileSyncCreateNew() { + const enc = new TextEncoder(); + const data = enc.encode("Hello"); + const filename = Deno.makeTempDirSync() + "/test.txt"; + Deno.writeFileSync(filename, data, { createNew: true }); + + assertThrows(() => { + Deno.writeFileSync(filename, data, { createNew: true }); + }, Deno.errors.AlreadyExists); + }, +); + Deno.test( { permissions: { read: true, write: true } }, function writeFileSyncAppend() { @@ -216,6 +230,19 @@ Deno.test( }, ); +Deno.test( + { permissions: { read: true, write: true } }, + async function writeFileCreateNew() { + const enc = new TextEncoder(); + const data = enc.encode("Hello"); + const filename = Deno.makeTempDirSync() + "/test.txt"; + await Deno.writeFile(filename, data, { createNew: true }); + await assertRejects(async () => { + await Deno.writeFile(filename, data, { createNew: true }); + }, Deno.errors.AlreadyExists); + }, +); + Deno.test( { permissions: { read: true, write: true } }, async function writeFileAppend() { -- cgit v1.2.3