From: Michael Orlitzky Date: Wed, 11 May 2011 19:20:41 +0000 (-0400) Subject: Add five new prop_c0120_identity tests. X-Git-Tag: 0.0.1~293 X-Git-Url: https://gitweb.michael.orlitzky.com/?a=commitdiff_plain;h=b3e24f3c735626ec203e0e8406b8333100a8375e;p=spline3.git Add five new prop_c0120_identity tests. --- diff --git a/src/Tests/Cube.hs b/src/Tests/Cube.hs index 418730a..295eaa6 100644 --- a/src/Tests/Cube.hs +++ b/src/Tests/Cube.hs @@ -274,6 +274,55 @@ prop_c0120_identity1 cube = t3 = tetrahedron3 cube +-- | Given in Sorokina and Zeilfelder, p. 79. Repeats +-- prop_c0120_identity2 with tetrahedrons 3 and 2. +prop_c0120_identity2 :: Cube -> Bool +prop_c0120_identity2 cube = + c t3 0 1 2 0 ~= (c t3 0 0 2 1 + c t2 0 0 1 2) / 2 + where + t3 = tetrahedron3 cube + t2 = tetrahedron2 cube + +-- | Given in Sorokina and Zeilfelder, p. 79. Repeats +-- prop_c0120_identity1 with tetrahedrons 2 and 1. +prop_c0120_identity3 :: Cube -> Bool +prop_c0120_identity3 cube = + c t2 0 1 2 0 ~= (c t2 0 0 2 1 + c t1 0 0 1 2) / 2 + where + t2 = tetrahedron2 cube + t1 = tetrahedron1 cube + + +-- | Given in Sorokina and Zeilfelder, p. 79. Repeats +-- prop_c0120_identity1 with tetrahedrons 4 and 7. +prop_c0120_identity4 :: Cube -> Bool +prop_c0120_identity4 cube = + c t4 0 1 2 0 ~= (c t4 0 0 2 1 + c t7 0 0 1 2) / 2 + where + t4 = tetrahedron4 cube + t7 = tetrahedron7 cube + + +-- | Given in Sorokina and Zeilfelder, p. 79. Repeats +-- prop_c0120_identity1 with tetrahedrons 7 and 6. +prop_c0120_identity5 :: Cube -> Bool +prop_c0120_identity5 cube = + c t7 0 1 2 0 ~= (c t7 0 0 2 1 + c t6 0 0 1 2) / 2 + where + t7 = tetrahedron7 cube + t6 = tetrahedron6 cube + + +-- | Given in Sorokina and Zeilfelder, p. 79. Repeats +-- prop_c0120_identity1 with tetrahedrons 6 and 5. +prop_c0120_identity6 :: Cube -> Bool +prop_c0120_identity6 cube = + c t6 0 1 2 0 ~= (c t6 0 0 2 1 + c t5 0 0 1 2) / 2 + where + t6 = tetrahedron6 cube + t5 = tetrahedron5 cube + + -- | Given in Sorokina and Zeilfelder, p. 79. Note that the third and -- fourth indices of c-t3 have been switched. This is because we -- store the triangles oriented such that their volume is diff --git a/test/TestSuite.hs b/test/TestSuite.hs index baf1ab1..4158d99 100644 --- a/test/TestSuite.hs +++ b/test/TestSuite.hs @@ -147,6 +147,21 @@ main = do putStr "prop_c0120_identity1... " quickCheckWith qc_args TC.prop_c0120_identity1 + putStr "prop_c0120_identity2... " + quickCheckWith qc_args TC.prop_c0120_identity2 + + putStr "prop_c0120_identity3... " + quickCheckWith qc_args TC.prop_c0120_identity3 + + putStr "prop_c0120_identity4... " + quickCheckWith qc_args TC.prop_c0120_identity4 + + putStr "prop_c0120_identity5... " + quickCheckWith qc_args TC.prop_c0120_identity5 + + putStr "prop_c0120_identity6... " + quickCheckWith qc_args TC.prop_c0120_identity6 + putStr "prop_c0210_identity1... " quickCheckWith qc_args TC.prop_c0210_identity1