summaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
authorAníbal Limón <anibal.limon@linux.intel.com>2017-07-26 10:04:10 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-30 08:45:11 +0100
commit4c2276469f58a88f864eb374c00dbbaace702de4 (patch)
treed4e66b76c3702b999cdf0377b9d36194ad384bcc /meta/lib
parente50b415aaaa1581473f85f0a8afa278b5f95129b (diff)
downloadopenembedded-core-4c2276469f58a88f864eb374c00dbbaace702de4.tar.gz
oeqa/core/runner: OEStreamLogger don't buffer test execution writes
Since OEQA framework uses Python logging functionality to report test results there is a class that wraps PyUnit writes into logging commands (OEStreamLogger), so don't buffer the actual test execution to have insight of what is currently executing. This fix will change a little the test output format adding an '\n' previous the test result, for example: From: test_nonmatching_checksum (lic_checksum.LicenseTests) ... ok To: test_nonmatching_checksum (lic_checksum.LicenseTests) ... ok This is because the new line added by the PyUnit StreamLogger because currently we don't have a manner to identify when a test execution starts at report level (write msg). [YOCTO #11827] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oeqa/core/runner.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/meta/lib/oeqa/core/runner.py b/meta/lib/oeqa/core/runner.py
index 8a55c24c78..f6539e60b6 100644
--- a/meta/lib/oeqa/core/runner.py
+++ b/meta/lib/oeqa/core/runner.py
@@ -25,10 +25,14 @@ class OEStreamLogger(object):
def write(self, msg):
if len(msg) > 1 and msg[0] != '\n':
- self.buffer += msg
- else:
- self.logger.log(logging.INFO, self.buffer.rstrip("\n"))
- self.buffer = ""
+ if '...' in msg:
+ self.buffer += msg
+ elif self.buffer:
+ self.buffer += msg
+ self.logger.log(logging.INFO, self.buffer)
+ self.buffer = ""
+ else:
+ self.logger.log(logging.INFO, msg)
def flush(self):
for handler in self.logger.handlers: