summaryrefslogtreecommitdiff
path: root/src/Test
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-06-21 13:58:46 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2025-06-21 15:59:51 +0200
commit06df252ce401f7701f1d830d1867fedda1b36d05 (patch)
tree5e5a044a71a6fa8f151ce581afa1aae34cbaf4e9 /src/Test
parentb7eb345a88df9ee87080fe776722f12e911b773f (diff)
Multiply-timeout command
Changelog: Added `multiply_timeout` command
Diffstat (limited to 'src/Test')
-rw-r--r--src/Test/Builtins.hs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Test/Builtins.hs b/src/Test/Builtins.hs
index 69579bc..6dba707 100644
--- a/src/Test/Builtins.hs
+++ b/src/Test/Builtins.hs
@@ -4,6 +4,8 @@ module Test.Builtins (
import Data.Map qualified as M
import Data.Maybe
+import Data.Proxy
+import Data.Scientific
import Data.Text (Text)
import Process (Process)
@@ -15,6 +17,7 @@ builtins = M.fromList
[ fq "send" builtinSend
, fq "flush" builtinFlush
, fq "guard" builtinGuard
+ , fq "multiply_timeout" builtinMultiplyTimeout
, fq "wait" builtinWait
]
where
@@ -53,5 +56,9 @@ builtinGuard :: SomeVarValue
builtinGuard = SomeVarValue $ VarValue [] (FunctionArguments $ M.singleton Nothing (SomeArgumentType (RequiredArgument @Bool))) $
\sline args -> TestBlockStep EmptyTestBlock $ Guard sline (getArgVars args Nothing) (getArg args Nothing)
+builtinMultiplyTimeout :: SomeVarValue
+builtinMultiplyTimeout = SomeVarValue $ VarValue [] (FunctionArguments $ M.singleton (Just "by") (SomeArgumentType (RequiredArgument @Scientific))) $
+ \_ args -> TestBlockStep EmptyTestBlock $ CreateObject (Proxy @MultiplyTimeout) (getArg args (Just "by"))
+
builtinWait :: SomeVarValue
builtinWait = someConstValue $ TestBlockStep EmptyTestBlock Wait