takedouble-0.0.1.1: test/Main.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
module Main where
import Control.Monad
import Control.Monad.IO.Class
import Hedgehog
import Hedgehog.Main
-- import System.Directory
import System.FilePath.Posix ((</>))
import System.IO.Temp
import Takedouble
main :: IO ()
main = defaultMain [checkParallel $$(discover)]
prop_FileEq_no_check_filename :: Property
prop_FileEq_no_check_filename = property $ do
File "a" 1024 "abc" "def" === File "b" 1024 "abc" "def"
-- prop_Find_Duplicates :: Property
-- prop_Find_Duplicates = property $
-- do
-- withTempDirectory "/tmp" "foo" $ do
-- \dir -> do
-- _ <- genTempFiles dir
-- files <- findPossibleDuplicates [dir]
-- if 1 < length files then pure () else error "no"
-- dir <- liftIO $ genTempFiles
-- files <- liftIO $ findPossibleDuplicates [dir]
-- True === (1 < length files)
genTempFiles :: FilePath -> IO FilePath
genTempFiles dir = do
-- dir <- getTemporaryDirectory
writeFile (dir </> "dup1") "duplicate file"
writeFile (dir </> "dup2") "duplicate file"
writeFile (dir </> "uniq1") "uniq file"
pure dir