module Tests.FunctionValues
where
-import Test.QuickCheck
+import Test.HUnit
+import Assertions
+import Examples
import FunctionValues
-instance Arbitrary FunctionValues where
- arbitrary = do
- front' <- arbitrary :: Gen Double
- back' <- arbitrary :: Gen Double
- left' <- arbitrary :: Gen Double
- right' <- arbitrary :: Gen Double
- top' <- arbitrary :: Gen Double
- down' <- arbitrary :: Gen Double
- front_left' <- arbitrary :: Gen Double
- front_right' <- arbitrary :: Gen Double
- front_top' <- arbitrary :: Gen Double
- front_down' <- arbitrary :: Gen Double
- back_left' <- arbitrary :: Gen Double
- back_right' <- arbitrary :: Gen Double
- back_top' <- arbitrary :: Gen Double
- back_down' <- arbitrary :: Gen Double
- left_top' <- arbitrary :: Gen Double
- left_down' <- arbitrary :: Gen Double
- right_top' <- arbitrary :: Gen Double
- right_down' <- arbitrary :: Gen Double
- front_left_top' <- arbitrary :: Gen Double
- front_left_down' <- arbitrary :: Gen Double
- front_right_top' <- arbitrary :: Gen Double
- front_right_down' <- arbitrary :: Gen Double
- back_left_top' <- arbitrary :: Gen Double
- back_left_down' <- arbitrary :: Gen Double
- back_right_top' <- arbitrary :: Gen Double
- back_right_down' <- arbitrary :: Gen Double
- interior' <- arbitrary :: Gen Double
-
- return empty_values { front = front',
- back = back',
- left = left',
- right = right',
- top = top',
- down = down',
- front_left = front_left',
- front_right = front_right',
- front_top = front_top',
- front_down = front_down',
- back_left = back_left',
- back_right = back_right',
- back_top = back_top',
- back_down = back_down',
- left_top = left_top',
- left_down = left_down',
- right_top = right_top',
- right_down = right_down',
- front_left_top = front_left_top',
- front_left_down = front_left_down',
- front_right_top = front_right_top',
- front_right_down = front_right_down',
- back_left_top = back_left_top',
- back_left_down = back_left_down',
- back_right_top = back_right_top',
- back_right_down = back_right_down',
- interior = interior' }
+test_directions :: Assertion
+test_directions =
+ assertTrue "all direction functions work" (and equalities)
+ where
+ fvs = make_values trilinear 1 1 1
+ equalities = [ interior fvs == 4,
+ front fvs == 1,
+ back fvs == 7,
+ left fvs == 2,
+ right fvs == 6,
+ down fvs == 3,
+ top fvs == 5,
+ front_left fvs == 1,
+ front_right fvs == 1,
+ front_down fvs == 1,
+ front_top fvs == 1,
+ back_left fvs == 3,
+ back_right fvs == 11,
+ back_down fvs == 5,
+ back_top fvs == 9,
+ left_down fvs == 2,
+ left_top fvs == 2,
+ right_down fvs == 4,
+ right_top fvs == 8,
+ front_left_down fvs == 1,
+ front_left_top fvs == 1,
+ front_right_down fvs == 1,
+ front_right_top fvs == 1,
+ back_left_down fvs == 3,
+ back_left_top fvs == 3,
+ back_right_down fvs == 7,
+ back_right_top fvs == 15]