Blame tests/HUnitTestExtended.hs
|
Packit |
bc3140 |
{-# LANGUAGE CPP #-}
|
|
Packit |
bc3140 |
module HUnitTestExtended (
|
|
Packit |
bc3140 |
extendedTests
|
|
Packit |
bc3140 |
) where
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
import Test.HUnit
|
|
Packit |
bc3140 |
import HUnitTestBase
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
#if MIN_VERSION_base(4,9,0)
|
|
Packit |
bc3140 |
errorCall :: a
|
|
Packit |
bc3140 |
errorCall = error "error"
|
|
Packit |
bc3140 |
#endif
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
extendedTests :: Test
|
|
Packit |
bc3140 |
extendedTests = test [
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
-- Hugs doesn't currently catch arithmetic exceptions.
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
"div by 0" ~:
|
|
Packit |
bc3140 |
expectUnspecifiedError (TestCase ((3 `div` 0 :: Integer) `seq` return ())),
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
"list ref out of bounds" ~:
|
|
Packit |
bc3140 |
expectUnspecifiedError (TestCase ([1 .. 4 :: Integer] !! 10 `seq` return ())),
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
#if MIN_VERSION_base(4,9,0)
|
|
Packit |
bc3140 |
"error" ~:
|
|
Packit |
bc3140 |
expectError "error\nCallStack (from HasCallStack):\n error, called at tests/HUnitTestExtended.hs:11:13 in main:HUnitTestExtended" (TestCase errorCall),
|
|
Packit |
bc3140 |
#else
|
|
Packit |
bc3140 |
"error" ~:
|
|
Packit |
bc3140 |
expectError "error" (TestCase (error "error")),
|
|
Packit |
bc3140 |
#endif
|
|
Packit |
bc3140 |
|
|
Packit |
bc3140 |
"tail []" ~:
|
|
Packit |
bc3140 |
expectUnspecifiedError (TestCase (tail [] `seq` return ()))
|
|
Packit |
bc3140 |
]
|