module Test.Tasty.HUnit
( testCase
, testCaseSteps
, module Test.Tasty.HUnit.Orig
) where
import Test.Tasty.Providers
import Test.Tasty.HUnit.Orig
import Test.Tasty.HUnit.Steps
import Data.Typeable
import Control.Exception
testCase :: TestName -> Assertion -> TestTree
testCase name = singleTest name . TestCase
newtype TestCase = TestCase Assertion
deriving Typeable
instance IsTest TestCase where
run _ (TestCase assertion) _ = do
hunitResult <- try assertion
return $
case hunitResult of
Right {} -> testPassed ""
Left (HUnitFailure message) -> testFailed message
testOptions = return []