summaryrefslogtreecommitdiff
path: root/src/Test.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-02-02 11:51:17 +0100
committerRoman Smrž <roman.smrz@seznam.cz>2025-02-08 23:00:20 +0100
commitd5c8930e9b14c1d1953c3a25c6be503b95d67d50 (patch)
tree8db63e839e22e091a44912768f41021f0a8501ab /src/Test.hs
parent9251a72e7876b61ede972136570e2b81c6a8d767 (diff)
Module import parsing and type check
Diffstat (limited to 'src/Test.hs')
-rw-r--r--src/Test.hs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/Test.hs b/src/Test.hs
index 3db7919..01b2d95 100644
--- a/src/Test.hs
+++ b/src/Test.hs
@@ -1,5 +1,5 @@
module Test (
- Module(..),
+ Module(..), ModuleName(..), textModuleName,
Test(..),
TestStep(..),
TestBlock(..),
@@ -53,11 +53,18 @@ import {-# SOURCE #-} Process
import Util
data Module = Module
- { moduleName :: [ Text ]
+ { moduleName :: ModuleName
, moduleTests :: [ Test ]
, moduleDefinitions :: [ ( VarName, SomeExpr ) ]
+ , moduleExports :: [ VarName ]
}
+newtype ModuleName = ModuleName [ Text ]
+ deriving (Eq, Ord)
+
+textModuleName :: ModuleName -> Text
+textModuleName (ModuleName parts) = T.intercalate "." parts
+
data Test = Test
{ testName :: Text
, testSteps :: Expr TestBlock