@@ -13,6 +13,7 @@ import Data.Proxy
14import Data.Singletons
14import Data.Singletons
16import qualified Hedgehog.Gen as Gen
17import qualified Hedgehog.Gen as Gen
18import Grenade
19import Grenade
@@ -21,7 +22,7 @@ import GHC.TypeLits
21import GHC.TypeLits.Witnesses
22import GHC.TypeLits.Witnesses
22import Test.Hedgehog.Compat
23import Test.Hedgehog.Compat
24−genNat :: Monad m => Gen.Gen m SomeNat
25+genNat :: Gen SomeNat
25genNat = do
26genNat = do
26 Just n <- someNatVal <$> choose 1 10
27 Just n <- someNatVal <$> choose 1 10
@@ -32,7 +33,7 @@ type Shape' = ('KProxy :: KProxy Shape)
32type Shape' = Shape
33type Shape' = Shape
35−genShape :: Monad m => Gen.Gen m (SomeSing Shape')
36+genShape :: Gen (SomeSing Shape')
37 = Gen.choice [
38 = Gen.choice [
@@ -40,20 +41,20 @@ genShape
43−genD1 :: Monad m => Gen.Gen m (SomeSing Shape')
44+genD1 :: Gen (SomeSing Shape')
45 n <- genNat
46 n <- genNat
46 return $ case n of
47 return $ case n of
47 SomeNat (_ :: Proxy x) -> SomeSing (sing :: Sing ('D1 x))
48 SomeNat (_ :: Proxy x) -> SomeSing (sing :: Sing ('D1 x))
49−genD2 :: Monad m => Gen.Gen m (SomeSing Shape')
50+genD2 :: Gen (SomeSing Shape')
51 n <- genNat
52 n <- genNat
52 m <- genNat
53 m <- genNat
53 return $ case (n, m) of
54 return $ case (n, m) of
54 (SomeNat (_ :: Proxy x), SomeNat (_ :: Proxy y)) -> SomeSing (sing :: Sing ('D2 x y))
55 (SomeNat (_ :: Proxy x), SomeNat (_ :: Proxy y)) -> SomeSing (sing :: Sing ('D2 x y))
56−genD3 :: Monad m => Gen.Gen m (SomeSing Shape')
57+genD3 :: Gen (SomeSing Shape')
58 n <- genNat
59 n <- genNat
59 m <- genNat
60 m <- genNat