diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-27 17:33:16 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-29 10:14:06 +0100 |
commit | b30ee0aba51a35a194a4338b988f93ece1ed281c (patch) | |
tree | 9becd0ebdcb3a15193b78b8e4f668f972d1699ab | |
parent | 5e9d0911cd86e980ab310cc0d79c9383fbc2c844 (diff) | |
download | openembedded-core-contrib-b30ee0aba51a35a194a4338b988f93ece1ed281c.tar.gz |
tests/data: Add log parsing test code
This allows us to write tests which ensure a particular action generates
a particular log message.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/tests/data.py | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/lib/bb/tests/data.py b/lib/bb/tests/data.py index 7994a88a78..b4e90e0327 100644 --- a/lib/bb/tests/data.py +++ b/lib/bb/tests/data.py @@ -24,6 +24,30 @@ import unittest import bb import bb.data import bb.parse +import logging + +class LogRecord(): + def __enter__(self): + logs = [] + class LogHandler(logging.Handler): + def emit(self, record): + logs.append(record) + logger = logging.getLogger("BitBake") + handler = LogHandler() + self.handler = handler + logger.addHandler(handler) + return logs + def __exit__(self, type, value, traceback): + logger = logging.getLogger("BitBake") + logger.removeHandler(self.handler) + return + +def logContains(item, logs): + for l in logs: + m = l.getMessage() + if item in m: + return True + return False class DataExpansions(unittest.TestCase): def setUp(self): @@ -301,7 +325,6 @@ class TestOverrides(unittest.TestCase): bb.data.update_data(self.d) self.assertEqual(self.d.getVar("TEST", True), "testvalue3") - class TestFlags(unittest.TestCase): def setUp(self): self.d = bb.data.init() |