diff options
Diffstat (limited to 'cli/tests')
-rw-r--r-- | cli/tests/unit/file_test.ts | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/cli/tests/unit/file_test.ts b/cli/tests/unit/file_test.ts index 640198034..f1db0d496 100644 --- a/cli/tests/unit/file_test.ts +++ b/cli/tests/unit/file_test.ts @@ -104,6 +104,50 @@ unitTest(function fileUsingEmptyStringFileName(): void { testSecondArgument("", ""); }); +unitTest( + { perms: { read: true, write: true } }, + function fileTruncateSyncSuccess(): void { + const filename = Deno.makeTempDirSync() + "/test_fileTruncateSync.txt"; + const file = Deno.openSync(filename, { + create: true, + read: true, + write: true, + }); + + file.truncateSync(20); + assertEquals(Deno.readFileSync(filename).byteLength, 20); + file.truncateSync(5); + assertEquals(Deno.readFileSync(filename).byteLength, 5); + file.truncateSync(-5); + assertEquals(Deno.readFileSync(filename).byteLength, 0); + + file.close(); + Deno.removeSync(filename); + }, +); + +unitTest( + { perms: { read: true, write: true } }, + async function fileTruncateSuccess(): Promise<void> { + const filename = Deno.makeTempDirSync() + "/test_fileTruncate.txt"; + const file = await Deno.open(filename, { + create: true, + read: true, + write: true, + }); + + await file.truncate(20); + assertEquals((await Deno.readFile(filename)).byteLength, 20); + await file.truncate(5); + assertEquals((await Deno.readFile(filename)).byteLength, 5); + await file.truncate(-5); + assertEquals((await Deno.readFile(filename)).byteLength, 0); + + file.close(); + await Deno.remove(filename); + }, +); + unitTest({ perms: { read: true } }, function fileStatSyncSuccess(): void { const file = Deno.openSync("README.md"); const fileInfo = file.statSync(); |