aboutsummaryrefslogtreecommitdiff
path: root/test/py/u_boot_utils.py
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2021-10-23 17:25:57 -0600
committerSimon Glass <sjg@chromium.org>2021-11-28 16:51:51 -0700
commit15156c95e9710447cc66f4b18009220bc4098d4e (patch)
treebb5072d828bff1b0d189e0e4156e2cfbb5e95e2e /test/py/u_boot_utils.py
parentc700f109a312d0c14b5409765013af4b7335d879 (diff)
test/py: Allow passing input to a program
When running a program on the host, allow input to be passed in as stdin. This is needed for running sfdisk, for example. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'test/py/u_boot_utils.py')
-rw-r--r--test/py/u_boot_utils.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/test/py/u_boot_utils.py b/test/py/u_boot_utils.py
index e816c7fbb6..f44442e0c7 100644
--- a/test/py/u_boot_utils.py
+++ b/test/py/u_boot_utils.py
@@ -154,7 +154,7 @@ def wait_until_file_open_fails(fn, ignore_errors):
return
raise Exception('File can still be opened')
-def run_and_log(u_boot_console, cmd, ignore_errors=False):
+def run_and_log(u_boot_console, cmd, ignore_errors=False, stdin=None):
"""Run a command and log its output.
Args:
@@ -166,6 +166,7 @@ def run_and_log(u_boot_console, cmd, ignore_errors=False):
will simply return if the command cannot be executed or exits with
an error code, otherwise an exception will be raised if such
problems occur.
+ stdin: Input string to pass to the command as stdin (or None)
Returns:
The output as a string.
@@ -173,7 +174,7 @@ def run_and_log(u_boot_console, cmd, ignore_errors=False):
if isinstance(cmd, str):
cmd = cmd.split()
runner = u_boot_console.log.get_runner(cmd[0], sys.stdout)
- output = runner.run(cmd, ignore_errors=ignore_errors)
+ output = runner.run(cmd, ignore_errors=ignore_errors, stdin=stdin)
runner.close()
return output