# 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 {argv0}{args:text} impl: python: function: runcmd_step rust: function: subplotlib::steplibrary::runcmd::run - when: I run, in {dirname}, {argv0}{args} impl: python: function: runcmd_step_in rust: function: subplotlib::steplibrary::runcmd::run_in types: dirname: path argv0: word args: text - when: I try to run {argv0}{args:text} impl: python: function: runcmd_try_to_run rust: function: subplotlib::steplibrary::runcmd::try_to_run - when: I try to run, in {dirname}, {argv0}{args} impl: python: function: runcmd_try_to_run_in rust: function: subplotlib::steplibrary::runcmd::try_to_run_in types: dirname: path argv0: word args: text # 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 "{text:text}" impl: python: function: runcmd_stdout_is rust: function: subplotlib::steplibrary::runcmd::stdout_is - then: 'stdout isn''t exactly "{text:text}"' impl: python: function: runcmd_stdout_isnt rust: function: subplotlib::steplibrary::runcmd::stdout_isnt - then: stderr is exactly "{text:text}" impl: python: function: runcmd_stderr_is rust: function: subplotlib::steplibrary::runcmd::stderr_is - then: 'stderr isn''t exactly "{text:text}"' impl: python: function: runcmd_stderr_isnt rust: function: subplotlib::steplibrary::runcmd::stderr_isnt # Steps to examine stdout/stderr for sub-strings. - then: stdout contains "{text:text}" impl: python: function: runcmd_stdout_contains rust: function: subplotlib::steplibrary::runcmd::stdout_contains - then: 'stdout doesn''t contain "{text:text}"' impl: python: function: runcmd_stdout_doesnt_contain rust: function: subplotlib::steplibrary::runcmd::stdout_doesnt_contain - then: stderr contains "{text:text}" impl: python: function: runcmd_stderr_contains rust: function: subplotlib::steplibrary::runcmd::stderr_contains - then: 'stderr doesn''t contain "{text:text}"' 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 {regex:text} impl: python: function: runcmd_stdout_matches_regex rust: function: subplotlib::steplibrary::runcmd::stdout_matches_regex - then: stdout doesn't match regex {regex:text} impl: python: function: runcmd_stdout_doesnt_match_regex rust: function: subplotlib::steplibrary::runcmd::stdout_doesnt_match_regex - then: stderr matches regex {regex:text} impl: python: function: runcmd_stderr_matches_regex rust: function: subplotlib::steplibrary::runcmd::stderr_matches_regex - then: stderr doesn't match regex {regex:text} impl: python: function: runcmd_stderr_doesnt_match_regex rust: function: subplotlib::steplibrary::runcmd::stderr_doesnt_match_regex