@@ -0,0 +1,25 @@
1+{-# OPTIONS_GHC -fdefer-type-errors #-}
3+-- | Test that infinite types has no Arbitrary instance
5+module NoTypecheckTest where
7+import Control.Exception
8+import GHC.Generics (Generic)
10+import Test.QuickCheck.Arbitrary.Generic
14+ deriving (Eq, Show, Generic)
16+-- | Instance which must not be valid
17+instance Arbitrary R where
18+ arbitrary = genericArbitrary
19+ shrink = genericShrink
21+unit_mustFail :: IO ()
23+ try (generate (arbitrary :: Gen R) >>= print) >>= \case
24+ Left (_ :: SomeException) -> pure ()
25+ Right _ -> error "Error expected"