DSH-0.10.0.0: tests/Main.hs
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# OPTIONS_GHC -Wall -O3 -fno-warn-orphans -fno-warn-overlapping-patterns #-}
module Main where
import ComprehensionTests
import CombinatorTests
#ifdef TESTSQL
import Database.HDBC.PostgreSQL
#endif
import System.Environment
import Test.Framework (Test, defaultMainWithArgs)
import Test.QuickCheck
import Data.List
#ifdef TESTSQL
getConn :: IO Connection
getConn = connectPostgreSQL "user = 'au' password = 'foobar' host = 'localhost' dbname = 'test'"
#endif
qc :: Testable prop => prop -> IO ()
qc = quickCheckWith stdArgs{maxSuccess = 100, maxSize = 5}
putStrPad :: String -> IO ()
putStrPad s = putStr (s ++ replicate (32 - length s) ' ' )
main :: IO ()
main = do
args <- getArgs
let args' = if or $ map (isPrefixOf "-s") args
then args
else "-s5":args
defaultMainWithArgs tests args'
tests :: [Test]
tests =
[ tests_types
, tests_tuples
, tests_join_hunit
, tests_nest_head_hunit
, tests_nest_guard_hunit
, tests_combinators_hunit
, tests_comprehensions
, tests_boolean
, tests_numerics
, tests_maybe
, tests_either
, tests_lists
, tests_lifted
]