X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=src%2FFunctionValues.hs;h=632a7f4bd7370d2867fd2af61bf528233661a985;hb=70f47e1795fac88c669a64f179430797293d6f58;hp=5332462d940ac7f9e4de10d5c00e1bebaad0e589;hpb=151b751fafdf5a22073fedb405b226e44bb75b17;p=spline3.git diff --git a/src/FunctionValues.hs b/src/FunctionValues.hs index 5332462..632a7f4 100644 --- a/src/FunctionValues.hs +++ b/src/FunctionValues.hs @@ -1,3 +1,6 @@ +-- The "value_at" function pattern matches on some integers, but +-- doesn't handle the "otherwise" case, for performance reasons. +{-# OPTIONS_GHC -Wno-incomplete-patterns #-} {-# LANGUAGE BangPatterns #-} -- | The FunctionValues module contains the 'FunctionValues' type and @@ -15,14 +18,18 @@ module FunctionValues ( where import Prelude hiding ( LT ) -import Test.HUnit ( Assertion ) -import Test.Framework ( Test, testGroup ) -import Test.Framework.Providers.HUnit ( testCase ) -import Test.Framework.Providers.QuickCheck2 ( testProperty ) -import Test.QuickCheck ( Arbitrary(..), choose ) +import Test.Tasty ( TestTree, testGroup ) +import Test.Tasty.HUnit ( Assertion, testCase ) +import Test.Tasty.QuickCheck ( Arbitrary( arbitrary ), choose, testProperty ) import Assertions ( assertTrue ) -import Cardinal ( Cardinal(..), cwx, cwy, cwz ) +import Cardinal ( + Cardinal(F, B, L, R, D, T, FL, FR, FD, FT, BL, BR, BD, BT, LD, LT, RD, + RT, FLD, FLT, FRD, FRT, BLD, BLT, BRD, BRT, I, Scalar, Sum, + Difference, Product, Quotient ), + cwx, + cwy, + cwz ) import Examples ( trilinear ) import Values ( Values3D, dims, idx ) @@ -371,9 +378,9 @@ test_directions = back_right_top fvs == 15] -function_values_tests :: Test.Framework.Test +function_values_tests :: TestTree function_values_tests = - testGroup "FunctionValues Tests" + testGroup "FunctionValues tests" [ testCase "test directions" test_directions ] @@ -429,14 +436,24 @@ prop_z_rotation_doesnt_affect_top fv0 = expr2 = top fv1 -function_values_properties :: Test.Framework.Test +function_values_properties :: TestTree function_values_properties = - let tp = testProperty - in - testGroup "FunctionValues Properties" [ - tp "x rotation doesn't affect front" prop_x_rotation_doesnt_affect_front, - tp "x rotation doesn't affect back" prop_x_rotation_doesnt_affect_back, - tp "y rotation doesn't affect left" prop_y_rotation_doesnt_affect_left, - tp "y rotation doesn't affect right" prop_y_rotation_doesnt_affect_right, - tp "z rotation doesn't affect top" prop_z_rotation_doesnt_affect_top, - tp "z rotation doesn't affect down" prop_z_rotation_doesnt_affect_down ] + testGroup "FunctionValues properties" [ + testProperty + "x rotation doesn't affect front" + prop_x_rotation_doesnt_affect_front, + testProperty + "x rotation doesn't affect back" + prop_x_rotation_doesnt_affect_back, + testProperty + "y rotation doesn't affect left" + prop_y_rotation_doesnt_affect_left, + testProperty + "y rotation doesn't affect right" + prop_y_rotation_doesnt_affect_right, + testProperty + "z rotation doesn't affect top" + prop_z_rotation_doesnt_affect_top, + testProperty + "z rotation doesn't affect down" + prop_z_rotation_doesnt_affect_down ]