]> gitweb.michael.orlitzky.com - spline3.git/blobdiff - src/Tests/Cube.hs
A bunch more test cleanup.
[spline3.git] / src / Tests / Cube.hs
index 17ea7f8857ee6e0a1bc9f079a7a19b7d8509fe57..e9e21d6fad3f5fd389050ce135b1d54d631155ff 100644 (file)
@@ -398,47 +398,27 @@ prop_c_tilde_2100_rotation_correct cube =
               (1/192)*(FD + RD + LD + BD)
 
 
--- | We know what (c t6 2 1 0 0) should be from Sorokina and Zeilfelder, p. 87.
---   This test checks the actual value based on the FunctionValues of the cube.
+-- | We know what (c t6 2 1 0 0) should be from Sorokina and
+--   Zeilfelder, p. 87.  This test checks the actual value based on
+--   the FunctionValues of the cube.
+--
+--   If 'prop_c_tilde_2100_rotation_correct' passes, then this test is
+--   even meaningful!
 prop_c_tilde_2100_correct :: Cube -> Bool
 prop_c_tilde_2100_correct cube =
-    c t6 2 1 0 0 == (3/8)*int
-                    + (1/12)*(f + r + l + b)
-                    + (1/64)*(ft + rt + lt + bt)
-                    + (7/48)*t + (1/48)*d + (1/96)*(fr + fl + br + bl)
-                    + (1/192)*(fd + rd + ld + bd)
+    c t6 2 1 0 0 == expected
     where
       t0 = tetrahedron0 cube
       t6 = tetrahedron6 cube
       fvs = Tetrahedron.fv t0
-      (Cube _ i j k _ _) = cube
-      f  = value_at fvs (i-1) j k
-      b  = value_at fvs (i+1) j k
-      l  = value_at fvs i (j-1) k
-      r  = value_at fvs i (j+1) k
-      d  = value_at fvs i j (k-1)
-      t  = value_at fvs i j (k+1)
-      fl = value_at fvs (i-1) (j-1) k
-      fr = value_at fvs (i-1) (j+1) k
-      fd = value_at fvs (i-1) j (k-1)
-      ft = value_at fvs (i-1) j (k+1)
-      bl = value_at fvs (i+1) (j-1) k
-      br = value_at fvs (i+1) (j+1) k
-      bd = value_at fvs (i+1) j (k-1)
-      bt = value_at fvs (i+1) j (k+1)
-      ld = value_at fvs i (j-1) (k-1)
-      lt = value_at fvs i (j-1) (k+1)
-      rd = value_at fvs i (j+1) (k-1)
-      rt = value_at fvs i (j+1) (k+1)
-      fld = value_at fvs (i-1) (j-1) (k-1)
-      flt = value_at fvs (i-1) (j-1) (k+1)
-      frd = value_at fvs (i-1) (j+1) (k-1)
-      frt = value_at fvs (i-1) (j+1) (k+1)
-      bld = value_at fvs (i+1) (j-1) (k-1)
-      blt = value_at fvs (i+1) (j-1) (k+1)
-      brd = value_at fvs (i+1) (j+1) (k-1)
-      brt = value_at fvs (i+1) (j+1) (k+1)
-      int = value_at fvs i j k
+      expected = eval fvs $
+                  (3/8)*I +
+                  (1/12)*(F + R + L + B) +
+                  (1/64)*(FT + RT + LT + BT) +
+                  (7/48)*T +
+                  (1/48)*D +
+                  (1/96)*(FR + FL + BR + BL) +
+                  (1/192)*(FD + RD + LD + BD)
 
 
 -- Tests to check that the correct edges are incidental.