30 lines
714 B
Haskell
30 lines
714 B
Haskell
module MailSpec where
|
|
|
|
import TestImport
|
|
import Utils.DateTimeSpec ()
|
|
import Model.Types.LanguagesSpec ()
|
|
|
|
import Mail
|
|
|
|
instance Arbitrary MailSmtpData where
|
|
arbitrary = genericArbitrary
|
|
shrink = genericShrink
|
|
|
|
instance Arbitrary MailContext where
|
|
arbitrary = genericArbitrary
|
|
shrink = genericShrink
|
|
|
|
instance Arbitrary VerpMode where
|
|
arbitrary = genericArbitrary
|
|
shrink = genericShrink
|
|
|
|
spec :: Spec
|
|
spec = do
|
|
parallel $ do
|
|
lawsCheckHspec (Proxy @MailSmtpData)
|
|
[ eqLaws, ordLaws, showReadLaws, monoidLaws ]
|
|
lawsCheckHspec (Proxy @MailContext)
|
|
[ eqLaws, ordLaws, showReadLaws, jsonLaws, hashableLaws ]
|
|
lawsCheckHspec (Proxy @VerpMode)
|
|
[ eqLaws, showReadLaws, jsonLaws ]
|