From 49cad79fb1f908131db2a7918f97b6d2e6275f90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E8=B6=85=E6=9D=B0?= <1098626505@qq.com> Date: Mon, 27 Apr 2020 04:27:24 +0800 Subject: fix(std/fs): move dest if not exists and overwrite (#4910) --- std/fs/move_test.ts | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'std/fs/move_test.ts') diff --git a/std/fs/move_test.ts b/std/fs/move_test.ts index 999b67cf0..ec899896c 100644 --- a/std/fs/move_test.ts +++ b/std/fs/move_test.ts @@ -42,6 +42,27 @@ Deno.test(async function moveDirectoryIfDestNotExists(): Promise { await Deno.remove(destDir); }); +Deno.test(async function moveDirectoryIfDestNotExistsAndOverwrite(): Promise< + void +> { + const srcDir = path.join(testdataDir, "move_test_src_2"); + const destDir = path.join(testdataDir, "move_test_dest_2"); + + await Deno.mkdir(srcDir, { recursive: true }); + + // if dest directory not exist + await assertThrowsAsync( + async (): Promise => { + await move(srcDir, destDir, { overwrite: true }); + throw new Error("should not throw error"); + }, + Error, + "should not throw error" + ); + + await Deno.remove(destDir); +}); + Deno.test(async function moveFileIfSrcNotExists(): Promise { const srcFile = path.join(testdataDir, "move_test_src_3", "test.txt"); const destFile = path.join(testdataDir, "move_test_dest_3", "test.txt"); @@ -208,6 +229,25 @@ Deno.test(function moveSyncDirectoryIfDestNotExists(): void { Deno.removeSync(destDir); }); +Deno.test(function moveSyncDirectoryIfDestNotExistsAndOverwrite(): void { + const srcDir = path.join(testdataDir, "move_sync_test_src_2"); + const destDir = path.join(testdataDir, "move_sync_test_dest_2"); + + Deno.mkdirSync(srcDir, { recursive: true }); + + // if dest directory not exist width overwrite + assertThrows( + (): void => { + moveSync(srcDir, destDir, { overwrite: true }); + throw new Error("should not throw error"); + }, + Error, + "should not throw error" + ); + + Deno.removeSync(destDir); +}); + Deno.test(function moveSyncFileIfSrcNotExists(): void { const srcFile = path.join(testdataDir, "move_sync_test_src_3", "test.txt"); const destFile = path.join(testdataDir, "move_sync_test_dest_3", "test.txt"); -- cgit v1.2.3