diff options
| author | Roman Smrž <roman.smrz@seznam.cz> | 2025-08-30 22:09:14 +0200 | 
|---|---|---|
| committer | Roman Smrž <roman.smrz@seznam.cz> | 2025-09-01 20:44:22 +0200 | 
| commit | 27bf4a78b7203ed77790c92134213c3398214daa (patch) | |
| tree | 5e17a92e4d4704ede7823595f42fb45ef686afbf /src/Test | |
| parent | fc40dfc41e8b3fbbe830846499ccce122930b235 (diff) | |
Add "ignore" command
Changelog: Added `ignore` builtin command
Diffstat (limited to 'src/Test')
| -rw-r--r-- | src/Test/Builtins.hs | 12 | 
1 files changed, 11 insertions, 1 deletions
| diff --git a/src/Test/Builtins.hs b/src/Test/Builtins.hs index 6dba707..244ff57 100644 --- a/src/Test/Builtins.hs +++ b/src/Test/Builtins.hs @@ -8,7 +8,7 @@ import Data.Proxy  import Data.Scientific  import Data.Text (Text) -import Process (Process) +import Process  import Script.Expr  import Test @@ -16,6 +16,7 @@ builtins :: GlobalDefs  builtins = M.fromList      [ fq "send" builtinSend      , fq "flush" builtinFlush +    , fq "ignore" builtinIgnore      , fq "guard" builtinGuard      , fq "multiply_timeout" builtinMultiplyTimeout      , fq "wait" builtinWait @@ -52,6 +53,15 @@ builtinFlush = SomeVarValue $ VarValue [] (FunctionArguments $ M.fromList atypes          , ( Just "matching", SomeArgumentType (OptionalArgument @Regex) )          ] +builtinIgnore :: SomeVarValue +builtinIgnore = SomeVarValue $ VarValue [] (FunctionArguments $ M.fromList atypes) $ +    \_ args -> TestBlockStep EmptyTestBlock $ CreateObject (Proxy @IgnoreProcessOutput) ( getArg args (Just "from"), getArgMb args (Just "matching") ) +  where +    atypes = +        [ ( Just "from", SomeArgumentType (ContextDefault @Process) ) +        , ( Just "matching", SomeArgumentType (OptionalArgument @Regex) ) +        ] +  builtinGuard :: SomeVarValue  builtinGuard = SomeVarValue $ VarValue [] (FunctionArguments $ M.singleton Nothing (SomeArgumentType (RequiredArgument @Bool))) $      \sline args -> TestBlockStep EmptyTestBlock $ Guard sline (getArgVars args Nothing) (getArg args Nothing) |