Show cumulative times for tests with dependents
This commit is contained in:
parent
86e2ff6c62
commit
4aa4216354
@ -107,6 +107,7 @@ import Control.Monad.Writer
|
|||||||
import Data.Bifunctor
|
import Data.Bifunctor
|
||||||
import Data.Bool
|
import Data.Bool
|
||||||
import Data.Char
|
import Data.Char
|
||||||
|
import Data.Either.Extra
|
||||||
import Data.Finite
|
import Data.Finite
|
||||||
import Data.Fixed (Fixed (MkFixed))
|
import Data.Fixed (Fixed (MkFixed))
|
||||||
import Data.Foldable hiding (foldl1, foldr1, maximum, maximumBy, minimum, minimumBy)
|
import Data.Foldable hiding (foldl1, foldr1, maximum, maximumBy, minimum, minimumBy)
|
||||||
@ -433,8 +434,10 @@ runTests opts r0 (TestTree name tc ts) =
|
|||||||
pure $ Left e
|
pure $ Left e
|
||||||
Right (Left e) ->
|
Right (Left e) ->
|
||||||
pure $ Left $ ExceptionFailure e
|
pure $ Left $ ExceptionFailure e
|
||||||
Right (Right (r, dt)) ->
|
Right (Right (r, dt)) -> do
|
||||||
Right . (dt,) <$> for ts (runTests opts r)
|
rs <- for ts $ runTests opts r
|
||||||
|
let childTimes = fromMaybe 0 $ eitherToMaybe $ fmap (sum . map fst) $ traverse (.result) rs
|
||||||
|
pure $ Right (dt + childTimes, rs)
|
||||||
where
|
where
|
||||||
runTest = \case
|
runTest = \case
|
||||||
TestCase f -> timed (liftIO . evaluate . DeepSeq.force) $ f r0
|
TestCase f -> timed (liftIO . evaluate . DeepSeq.force) $ f r0
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user