import Distribution.ShellHarness
import System.Environment ( getArgs )
import System.Directory ( getCurrentDirectory )
import System.Exit ( ExitCode (..), exitWith )
import Control.Monad
import System.IO( stdout, hSetBuffering, BufferMode ( NoBuffering ) )

main :: IO ()
main = do
     hSetBuffering stdout NoBuffering
     tests <- getArgs
     cwd <- getCurrentDirectory 
     res <- runTests cwd tests
     when ( not $ res ) $ exitWith $ ExitFailure 1

