Skip to content

Commit

Permalink
fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
lukaszcz committed Jun 21, 2024
1 parent f57678a commit 1de28b5
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 7 deletions.
6 changes: 6 additions & 0 deletions src/Juvix/Compiler/Pipeline.hs
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,9 @@ regToRiscZeroRust = regToRust' Rust.BackendRiscZero
regToCasm :: (Member (Reader EntryPoint) r) => Reg.InfoTable -> Sem r Casm.Result
regToCasm = Reg.toCasm >=> return . Casm.fromReg

regToCasm' :: (Member (Reader Reg.Options) r) => Reg.InfoTable -> Sem r Casm.Result
regToCasm' = Reg.toCasm' >=> return . Casm.fromReg

casmToCairo :: Casm.Result -> Sem r Cairo.Result
casmToCairo Casm.Result {..} =
return
Expand All @@ -370,6 +373,9 @@ casmToCairo Casm.Result {..} =
regToCairo :: (Member (Reader EntryPoint) r) => Reg.InfoTable -> Sem r Cairo.Result
regToCairo = regToCasm >=> casmToCairo

regToCairo' :: (Member (Reader Reg.Options) r) => Reg.InfoTable -> Sem r Cairo.Result
regToCairo' = regToCasm' >=> casmToCairo

treeToAnoma' :: (Members '[Error JuvixError, Reader NockmaTree.CompilerOptions] r) => Tree.InfoTable -> Sem r NockmaTree.AnomaResult
treeToAnoma' = Tree.toNockma >=> NockmaTree.fromTreeTable

Expand Down
3 changes: 2 additions & 1 deletion src/Juvix/Compiler/Reg/Pipeline.hs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
module Juvix.Compiler.Reg.Pipeline
( module Juvix.Compiler.Reg.Pipeline,
module Juvix.Compiler.Reg.Data.InfoTable,
Options,
)
where

Expand Down Expand Up @@ -33,4 +34,4 @@ toRust :: (Member (Reader EntryPoint) r) => InfoTable -> Sem r InfoTable
toRust = mapReader fromEntryPoint . toRust'

toCasm :: (Member (Reader EntryPoint) r) => InfoTable -> Sem r Blocks.InfoTable
toCasm = mapReader fromEntryPoint . toCasm
toCasm = mapReader fromEntryPoint . toCasm'
4 changes: 3 additions & 1 deletion test/Asm/Transformation/Prealloc.hs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import Base
import Juvix.Compiler.Asm.Options
import Juvix.Compiler.Asm.Transformation
import Juvix.Compiler.Asm.Transformation.Base
import Juvix.Compiler.Tree.Options qualified as Tree

allTests :: TestTree
allTests = testGroup "Prealloc" (map liftTest Run.tests)
Expand All @@ -22,5 +23,6 @@ liftTest _testEval =
opts =
Options
{ _optDebug = True,
_optLimits = getLimits TargetCWasm32Wasi True
_optLimits = getLimits TargetCWasm32Wasi True,
_optTreeOptions = Tree.defaultOptions
}
4 changes: 3 additions & 1 deletion test/Asm/Transformation/Reachability.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import Data.HashMap.Strict qualified as HashMap
import Juvix.Compiler.Asm.Options
import Juvix.Compiler.Asm.Transformation
import Juvix.Compiler.Asm.Transformation.Base
import Juvix.Compiler.Tree.Options qualified as Tree

data ReachabilityTest = ReachabilityTest
{ _reachabilityTestReachable :: [Text],
Expand Down Expand Up @@ -52,5 +53,6 @@ liftTest ReachabilityTest {..} =
opts =
Options
{ _optDebug = True,
_optLimits = getLimits TargetCWasm32Wasi True
_optLimits = getLimits TargetCWasm32Wasi True,
_optTreeOptions = Tree.defaultOptions
}
5 changes: 3 additions & 2 deletions test/Casm/Reg/Base.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ import Juvix.Compiler.Casm.Data.Result
import Juvix.Compiler.Casm.Error
import Juvix.Compiler.Casm.Interpreter
import Juvix.Compiler.Reg.Data.InfoTable qualified as Reg
import Juvix.Compiler.Reg.Transformation qualified as Reg
import Juvix.Data.PPOutput
import Reg.Run.Base qualified as Reg

compileAssertion' :: Maybe (Path Abs File) -> Path Abs Dir -> Path Abs File -> Symbol -> Reg.InfoTable -> (String -> IO ()) -> Assertion
compileAssertion' inputFile _ outputFile _ tab step = do
step "Translate to CASM"
case run $ runError @JuvixError $ regToCasm tab of
case run $ runError @JuvixError $ runReader Reg.defaultOptions $ regToCasm' tab of
Left err -> assertFailure (prettyString (fromJuvixError @GenericError err))
Right Result {..} -> do
step "Interpret"
Expand All @@ -30,7 +31,7 @@ compileAssertion' inputFile _ outputFile _ tab step = do
cairoAssertion' :: Maybe (Path Abs File) -> Path Abs Dir -> Path Abs File -> Symbol -> Reg.InfoTable -> (String -> IO ()) -> Assertion
cairoAssertion' inputFile dirPath outputFile _ tab step = do
step "Translate to Cairo"
case run $ runError @JuvixError $ regToCairo tab of
case run $ runError @JuvixError $ runReader Reg.defaultOptions $ regToCairo' tab of
Left err -> assertFailure (prettyString (fromJuvixError @GenericError err))
Right res -> do
step "Serialize to Cairo bytecode"
Expand Down
4 changes: 2 additions & 2 deletions test/Reg/Run/Base.hs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import Juvix.Compiler.Reg.Data.InfoTable
import Juvix.Compiler.Reg.Error
import Juvix.Compiler.Reg.Interpreter
import Juvix.Compiler.Reg.Pretty
import Juvix.Compiler.Reg.Transformation
import Juvix.Compiler.Reg.Transformation as Reg
import Juvix.Compiler.Reg.Translation.FromSource
import Juvix.Data.PPOutput

Expand Down Expand Up @@ -56,7 +56,7 @@ regRunAssertionParam interpretFun mainFile expectedFile trans testTrans step = d
Right tab0 -> do
unless (null trans) $
step "Transform"
case run $ runError @JuvixError $ applyTransformations trans tab0 of
case run $ runError @JuvixError $ runReader Reg.defaultOptions $ applyTransformations trans tab0 of
Left err -> assertFailure (prettyString (fromJuvixError @GenericError err))
Right tab -> do
testTrans tab
Expand Down

0 comments on commit 1de28b5

Please sign in to comment.