module Test.ImpSpec.Main ( impSpecMain, impSpecConfig, impSpecMainWithConfig, ) where import System.IO ( BufferMode (LineBuffering), hSetBuffering, hSetEncoding, stdout, utf8, ) import Test.Hspec import Test.Hspec.Core.Runner (ColorMode (ColorAlways), Config (..), defaultConfig, hspecWith) impSpecConfig :: Config impSpecConfig :: Config impSpecConfig = Config defaultConfig { configTimes = True , configColorMode = ColorAlways } impSpecMainWithConfig :: Config -> Spec -> IO () impSpecMainWithConfig :: Config -> Spec -> IO () impSpecMainWithConfig Config conf Spec spec = do Handle -> BufferMode -> IO () hSetBuffering Handle stdout BufferMode LineBuffering Handle -> TextEncoding -> IO () hSetEncoding Handle stdout TextEncoding utf8 Config -> Spec -> IO () hspecWith Config conf Spec spec impSpecMain :: Spec -> IO () impSpecMain :: Spec -> IO () impSpecMain = Config -> Spec -> IO () impSpecMainWithConfig Config impSpecConfig