From 8f6ca81d22c8b91186b8a973b1082684c3b41ae4 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Sun, 5 Jun 2016 03:22:35 +0200 Subject: [PATCH] Add tests to RecreateSymlinkOverwriteSpec --- test/HPath/IO/RecreateSymlinkOverwriteSpec.hs | 13 ++++++++++++- test/HPath/IO/RecreateSymlinkSpec.hs | 1 - 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/test/HPath/IO/RecreateSymlinkOverwriteSpec.hs b/test/HPath/IO/RecreateSymlinkOverwriteSpec.hs index 175bbe3..5754f37 100644 --- a/test/HPath/IO/RecreateSymlinkOverwriteSpec.hs +++ b/test/HPath/IO/RecreateSymlinkOverwriteSpec.hs @@ -29,6 +29,8 @@ setupFiles = do createDir' "dir" createDir' "noPerms" createDir' "noWritePerm" + createDir' "alreadyExistsD2" + createRegularFile' "alreadyExistsD2/lala" noPerms "noPerms" noWritableDirPerms "noWritePerm" writeFile' "myFile" "Blahfaselgagaga" @@ -41,7 +43,9 @@ cleanupFiles = do deleteFile' "myFile" deleteFile' "myFileL" deleteFile' "alreadyExists" + deleteFile' "alreadyExistsD2/lala" deleteDir' "alreadyExistsD" + deleteDir' "alreadyExistsD2" deleteDir' "dir" deleteDir' "noPerms" deleteDir' "noWritePerm" @@ -69,7 +73,7 @@ spec = before_ setupFiles $ after_ cleanupFiles $ "alreadyExists" Overwrite - it "recreateSymLink (Overwrite), destination already exists and is a dir" $ do + it "recreateSymLink (Overwrite), destination already exists and is an empty dir" $ do recreateSymlink' "myFileL" "alreadyExistsD" Overwrite @@ -77,6 +81,13 @@ spec = before_ setupFiles $ after_ cleanupFiles $ createDir' "alreadyExistsD" -- posix failures -- + it "recreateSymLink (Overwrite), destination already exists and is a non-empty dir" $ do + recreateSymlink' "myFileL" + "alreadyExistsD2" + Overwrite + `shouldThrow` + (\e -> ioeGetErrorType e == UnsatisfiedConstraints) + it "recreateSymLink (Overwrite), wrong input type (file)" $ recreateSymlink' "myFile" "movedFile" diff --git a/test/HPath/IO/RecreateSymlinkSpec.hs b/test/HPath/IO/RecreateSymlinkSpec.hs index ce5e26a..2d01307 100644 --- a/test/HPath/IO/RecreateSymlinkSpec.hs +++ b/test/HPath/IO/RecreateSymlinkSpec.hs @@ -3,7 +3,6 @@ module HPath.IO.RecreateSymlinkSpec where --- TODO: exception if destination exists but is not a file + `OverWrite` CopyMode import Test.Hspec