X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=src%2FAssertions.hs;h=023cf6503adc11b8bf7d6b26d3aad6193c4b1612;hb=d6dd574714648c0703175b5b2d3ccdd5198bb552;hp=8efd12340b04408c6e5916271d01c25977e368a3;hpb=62e6ea5912a0ef9b21d034590700d6b450f942fb;p=spline3.git diff --git a/src/Assertions.hs b/src/Assertions.hs index 8efd123..023cf65 100644 --- a/src/Assertions.hs +++ b/src/Assertions.hs @@ -1,26 +1,31 @@ -module Assertions +-- | The Assertions module contains assertions for use in HUnit +-- tests. They primarily fill the need for an equality test that +-- works with floating point numbers. +-- +module Assertions ( + assertAlmostEqual, + assertTrue ) where -import Control.Monad (unless) -import Test.HUnit +import Control.Monad ( unless ) +import Test.HUnit ( + Assertion, + assertBool, + assertFailure ) + +import Comparisons ( (~=) ) -import Comparisons -import Point -- | An HUnit assertion that wraps the almost_equals function. Stolen --- from the definition of assertEqual in Test/HUnit/Base.hs. +-- from the definition of 'assertEqual' in Test\/HUnit\/Base.hs. assertAlmostEqual :: String -> Double -> Double -> Assertion assertAlmostEqual preface expected actual = unless (actual ~= expected) (assertFailure msg) - where msg = (if null preface then "" else preface ++ "\n") ++ - "expected: " ++ show expected ++ "\n but got: " ++ show actual + where msg = (if null preface then "" else preface ++ "\n") ++ + "expected: " ++ show expected ++ "\n but got: " ++ show actual --- | An HUnit assertion that wraps the is_close function. Stolen --- from the definition of assertEqual in Test/HUnit/Base.hs. -assertClose :: String -> Point -> Point -> Assertion -assertClose preface expected actual = - unless (actual `is_close` expected) (assertFailure msg) - where msg = (if null preface then "" else preface ++ "\n") ++ - "expected: " ++ show expected ++ "\n but got: " ++ show actual +-- | It's asinine that this doesn't exist already. +assertTrue :: String -> Bool -> Assertion +assertTrue = assertBool