module Main where import Control.Concurrent.MVar import Test.Tasty import System.Environment import Data.MockIO.FileSystem.Test import Control.Monad.Script.Test import Control.Monad.Script.Http.Test import Data.MockIO.Test main :: IO () main = do k <- numTests setEnv "TASTY_NUM_THREADS" "3" lock <- newMVar () defaultMain $ testGroup "All Tests" [ Control.Monad.Script.Test.tests k , Control.Monad.Script.Http.Test.tests k lock , Data.MockIO.Test.tests k , Data.MockIO.FileSystem.Test.tests k ] numTests :: IO Int numTests = do var <- lookupEnv "CI" case var of Just "true" -> return 1 _ -> return 10