summaryrefslogtreecommitdiff
path: root/tests/helpers.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/helpers.py')
-rw-r--r--tests/helpers.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/helpers.py b/tests/helpers.py
index db20d798..c26f4859 100644
--- a/tests/helpers.py
+++ b/tests/helpers.py
@@ -1,5 +1,31 @@
"""Helpers for coverage.py tests."""
+import subprocess
+
+
+# This isn't really a backward compatibility thing, should be moved into a
+# helpers file or something.
+def run_command(cmd):
+ """Run a command in a sub-process.
+
+ Returns the exit status code and the combined stdout and stderr.
+
+ """
+ proc = subprocess.Popen(
+ cmd, shell=True,
+ stdin=subprocess.PIPE, stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT
+ )
+ output, _ = proc.communicate()
+ status = proc.returncode
+
+ # Get the output, and canonicalize it to strings with newlines.
+ if not isinstance(output, str):
+ output = output.decode('utf-8')
+ output = output.replace('\r', '')
+
+ return status, output
+
class CheckUniqueFilenames(object):
"""Asserts the uniqueness of filenames passed to a function."""