module Main where import Data.String (fromString) import Data.Text (pack) import Test.QuickCheck.Instances() import Test.Tasty ( defaultMain, testGroup ) import Test.Tasty.QuickCheck ( (===), testProperty ) import Data.Password.Types ( mkPassword, unsafeShowPassword ) main :: IO () main = defaultMain $ testGroup "Password" [ testProperty "mkPassword <-> unsafeShowPassword" $ \pass -> unsafeShowPassword (mkPassword pass) === pass , testProperty "Password always prints **PASSWORD**" $ \pass -> show (mkPassword pass) === "**PASSWORD**" , testProperty "fromString works" $ \pass -> unsafeShowPassword (fromString pass) === pack pass ]