mirror of
https://github.com/anoma/juvix.git
synced 2024-12-20 05:12:05 +03:00
186f4f66ef
Adds Juvix tests for the compilation pipeline - these are converted from the JuvixCore tests (those that make sense). Currently, only the translation from Juvix to JuvixCore is checked for the tests that can be type-checked. Ultimately, the entire compilation pipeline down to native code / WebAssembly should be checked on these tests. Closes #1689
44 lines
876 B
Haskell
44 lines
876 B
Haskell
module Main (main) where
|
|
|
|
import Arity qualified
|
|
import Asm qualified
|
|
import BackendC qualified
|
|
import Base
|
|
import Compilation qualified
|
|
import Core qualified
|
|
import Internal qualified
|
|
import Parsing qualified
|
|
import Reachability qualified
|
|
import Runtime qualified
|
|
import Scope qualified
|
|
import Termination qualified
|
|
import Typecheck qualified
|
|
|
|
slowTests :: TestTree
|
|
slowTests =
|
|
testGroup
|
|
"Juvix slow tests"
|
|
[ BackendC.allTests,
|
|
Runtime.allTests,
|
|
Asm.allTests,
|
|
Core.allTests,
|
|
Internal.allTests,
|
|
Compilation.allTests
|
|
]
|
|
|
|
fastTests :: TestTree
|
|
fastTests =
|
|
testGroup
|
|
"Juvix fast tests"
|
|
[ Parsing.allTests,
|
|
Scope.allTests,
|
|
Termination.allTests,
|
|
Arity.allTests,
|
|
Typecheck.allTests,
|
|
Reachability.allTests
|
|
]
|
|
|
|
main :: IO ()
|
|
main = do
|
|
defaultMain (testGroup "Juvix tests" [fastTests, slowTests])
|