summaryrefslogtreecommitdiff
path: root/src/Test.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-06-19 22:24:00 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2025-06-21 15:59:51 +0200
commitb7eb345a88df9ee87080fe776722f12e911b773f (patch)
treeae66d29255f35b44cfcbc7de8cc6d083d002d39c /src/Test.hs
parentda73a6777c2e4b7b4a54830c781a6e5bb2cb86fe (diff)
Object type with constructors and destructors
Diffstat (limited to 'src/Test.hs')
-rw-r--r--src/Test.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Test.hs b/src/Test.hs
index a9a2cdb..6c44e94 100644
--- a/src/Test.hs
+++ b/src/Test.hs
@@ -10,7 +10,9 @@ import Data.Typeable
import Network
import Process
+import Run.Monad
import Script.Expr
+import Script.Object
import Script.Shell
data Test = Test
@@ -32,6 +34,7 @@ instance Monoid (TestBlock ()) where
data TestStep a where
Scope :: TestBlock a -> TestStep a
+ CreateObject :: forall o. ObjectType TestRun o => Proxy o -> ConstructorArgs o -> TestStep ()
Subnet :: TypedVarName Network -> Network -> (Network -> TestStep a) -> TestStep a
DeclNode :: TypedVarName Node -> Network -> (Node -> TestStep a) -> TestStep a
Spawn :: TypedVarName Process -> Either Network Node -> [ Text ] -> (Process -> TestStep a) -> TestStep a