never executed always true always false
1 module Main where
2
3 -- conjure tests
4 import Conjure.Prelude
5 import Conjure.Language.Type ( TypeCheckerMode(..) )
6 import qualified Conjure.Language.DomainSizeTest ( tests )
7 import qualified Conjure.RepresentationsTest ( tests )
8 import qualified Conjure.ModelAllSolveAll ( tests, TestTimeLimit(..) )
9 import qualified Conjure.TypeCheckAll ( tests )
10 import qualified Conjure.ParsePrint ( tests )
11 import qualified Conjure.ParserFuzz ( tests )
12 import qualified Conjure.Custom ( tests )
13
14 -- tasty
15 import Test.Tasty ( defaultMainWithIngredients, defaultIngredients, includingOptions, askOption, testGroup )
16 import Test.Tasty.Options ( OptionDescription(..) )
17
18 -- tasty-ant-xml
19 import Test.Tasty.Runners.AntXML ( antXMLRunner )
20
21
22 main :: IO ()
23 main = do
24 let ?typeCheckerMode = StronglyTyped
25 modelAllSolveAllTests <- Conjure.ModelAllSolveAll.tests
26 typeCheckAllTests <- Conjure.TypeCheckAll.tests
27 parsePrintTests <- Conjure.ParsePrint.tests
28 parseFuzzTests <- Conjure.ParserFuzz.tests
29 customTests <- Conjure.Custom.tests
30 let ingredients = antXMLRunner
31 : includingOptions [Option (Proxy :: Proxy Conjure.ModelAllSolveAll.TestTimeLimit)]
32 : defaultIngredients
33 defaultMainWithIngredients ingredients $ askOption $ \ testTimeLimit ->
34 testGroup "conjure"
35 [ Conjure.Language.DomainSizeTest.tests
36 , Conjure.RepresentationsTest.tests
37 , parseFuzzTests
38 , parsePrintTests
39 , modelAllSolveAllTests testTimeLimit
40 , typeCheckAllTests
41 , customTests testTimeLimit
42 ]