Arbitrary(..),
Gen,
Property,
- choose)
+ choose,
+ vectorOf)
import Assertions (assertAlmostEqual, assertTrue)
import Comparisons ((~=))
import Cube (Cube(Cube),
instance Arbitrary Grid where
arbitrary = do
- fvs <- arbitrary :: Gen Values3D
+ x_dim <- choose (1, 27)
+ y_dim <- choose (1, 27)
+ z_dim <- choose (1, 27)
+ elements <- vectorOf (x_dim * y_dim * z_dim) (arbitrary :: Gen Double)
+ let new_shape = (R.Z R.:. x_dim R.:. y_dim R.:. z_dim)
+ let fvs = R.fromListUnboxed new_shape elements
return $ Grid fvs