summaryrefslogtreecommitdiff
path: root/share/common/lib/runcmd.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'share/common/lib/runcmd.yaml')
-rw-r--r--share/common/lib/runcmd.yaml185
1 files changed, 185 insertions, 0 deletions
diff --git a/share/common/lib/runcmd.yaml b/share/common/lib/runcmd.yaml
new file mode 100644
index 0000000..bde2f69
--- /dev/null
+++ b/share/common/lib/runcmd.yaml
@@ -0,0 +1,185 @@
+# Bindings for the runcmd steplibrary
+
+- given: helper script {script} for runcmd
+ impl:
+ python:
+ function: runcmd_helper_script
+ rust:
+ function: subplotlib::steplibrary::runcmd::helper_script
+ types:
+ script: file
+
+- given: srcdir is in the PATH
+ impl:
+ python:
+ function: runcmd_helper_srcdir_path
+ rust:
+ function: subplotlib::steplibrary::runcmd::helper_srcdir_path
+
+- when: I run (?P<argv0>\S+)(?P<args>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_step
+ rust:
+ function: subplotlib::steplibrary::runcmd::run
+
+- when: I run, in (?P<dirname>\S+), (?P<argv0>\S+)(?P<args>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_step_in
+ rust:
+ function: subplotlib::steplibrary::runcmd::run_in
+
+- when: I try to run (?P<argv0>\S+)(?P<args>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_try_to_run
+ rust:
+ function: subplotlib::steplibrary::runcmd::try_to_run
+
+- when: I try to run, in (?P<dirname>\S+), (?P<argv0>\S+)(?P<args>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_try_to_run_in
+ rust:
+ function: subplotlib::steplibrary::runcmd::try_to_run_in
+
+# Steps to examine exit code of latest command.
+
+- then: exit code is {exit}
+ impl:
+ python:
+ function: runcmd_exit_code_is
+ rust:
+ function: subplotlib::steplibrary::runcmd::exit_code_is
+ types:
+ exit: int
+
+- then: exit code is not {exit}
+ impl:
+ python:
+ function: runcmd_exit_code_is_not
+ rust:
+ function: subplotlib::steplibrary::runcmd::exit_code_is_not
+ types:
+ exit: int
+
+- then: command is successful
+ impl:
+ python:
+ function: runcmd_exit_code_is_zero
+ rust:
+ function: subplotlib::steplibrary::runcmd::exit_code_is_zero
+
+- then: command fails
+ impl:
+ python:
+ function: runcmd_exit_code_is_nonzero
+ rust:
+ function: subplotlib::steplibrary::runcmd::exit_code_is_nonzero
+
+# Steps to examine stdout/stderr for exact content.
+
+- then: stdout is exactly "(?P<text>.*)"
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_is
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_is
+
+- then: 'stdout isn''t exactly "(?P<text>.*)"'
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_isnt
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_isnt
+
+- then: stderr is exactly "(?P<text>.*)"
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_is
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_is
+
+- then: 'stderr isn''t exactly "(?P<text>.*)"'
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_isnt
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_isnt
+
+# Steps to examine stdout/stderr for sub-strings.
+
+- then: stdout contains "(?P<text>.*)"
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_contains
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_contains
+
+- then: 'stdout doesn''t contain "(?P<text>.*)"'
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_doesnt_contain
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_doesnt_contain
+
+- then: stderr contains "(?P<text>.*)"
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_contains
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_contains
+
+- then: 'stderr doesn''t contain "(?P<text>.*)"'
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_doesnt_contain
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_doesnt_contain
+
+# Steps to match stdout/stderr against regular expressions.
+
+- then: stdout matches regex (?P<regex>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_matches_regex
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_matches_regex
+
+- then: stdout doesn't match regex (?P<regex>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_stdout_doesnt_match_regex
+ rust:
+ function: subplotlib::steplibrary::runcmd::stdout_doesnt_match_regex
+
+- then: stderr matches regex (?P<regex>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_matches_regex
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_matches_regex
+
+- then: stderr doesn't match regex (?P<regex>.*)
+ regex: true
+ impl:
+ python:
+ function: runcmd_stderr_doesnt_match_regex
+ rust:
+ function: subplotlib::steplibrary::runcmd::stderr_doesnt_match_regex