summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/oetest.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-08-15 17:56:40 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-08-17 10:23:43 +0100
commit896f1c7696abe467c83c0e0a0bd29609249d3111 (patch)
treef00431db4e597d2a0e7206ddf3009862369c4913 /meta/lib/oeqa/oetest.py
parenta18e3c92e9bd424eb8bfbda85e10edb80d798542 (diff)
downloadpoky-896f1c7696abe467c83c0e0a0bd29609249d3111.tar.gz
oeqa/oetest: Improve subprocess error reporting
Without this, we get to know the command failed and the exit code but have no idea how the command failed since we don't get the output by default. This makes it much easier to see what went wrong and stand a chance of fixing it. (From OE-Core rev: b020b01d41ccaae5d679f1f7950af2e1a1788d39) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/oetest.py')
-rw-r--r--meta/lib/oeqa/oetest.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index 514631249c..cf7e8628d8 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -136,6 +136,15 @@ class oeRuntimeTest(oeTest):
136 if status != 0: 136 if status != 0:
137 return status 137 return status
138 138
139class OETestCalledProcessError(subprocess.CalledProcessError):
140 def __str__(self):
141 if hasattr(self, "stderr"):
142 return "Command '%s' returned non-zero exit status %d with output %s and stderr %s" % (self.cmd, self.returncode, self.output, self.stderr)
143 else:
144 return "Command '%s' returned non-zero exit status %d with output %s" % (self.cmd, self.returncode, self.output)
145
146subprocess.CalledProcessError = OETestCalledProcessError
147
139class oeSDKTest(oeTest): 148class oeSDKTest(oeTest):
140 def __init__(self, methodName='runTest'): 149 def __init__(self, methodName='runTest'):
141 self.sdktestdir = oeSDKTest.tc.sdktestdir 150 self.sdktestdir = oeSDKTest.tc.sdktestdir