diff options
author | Santeri Paavolainen <santeri.paavolainen@codento.com> | 2012-09-30 06:54:31 +0300 |
---|---|---|
committer | Santeri Paavolainen <santeri.paavolainen@codento.com> | 2012-09-30 06:54:31 +0300 |
commit | 511ad18ea343238053208313a411392380f1a12b (patch) | |
tree | 65144cb4cf8e59fad9859787aa62a53ed4d07adf /unit_tests | |
parent | 908b2cda43eff9ab7a5045b6f6dfe3a718fb9afd (diff) | |
download | nose-511ad18ea343238053208313a411392380f1a12b.tar.gz |
Format captured log records immediately to have consistent formatting of mutables.
This is a fix for https://github.com/nose-devs/nose/issues/561
Diffstat (limited to 'unit_tests')
-rw-r--r-- | unit_tests/test_logcapture_plugin.py | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/unit_tests/test_logcapture_plugin.py b/unit_tests/test_logcapture_plugin.py index f53f233..63d1f8b 100644 --- a/unit_tests/test_logcapture_plugin.py +++ b/unit_tests/test_logcapture_plugin.py @@ -77,7 +77,24 @@ class TestLogCapturePlugin(object): log.debug("Hello") c.end() eq_(1, len(c.handler.buffer)) - eq_("Hello", c.handler.buffer[0].msg) + eq_("foobar.something: DEBUG: Hello", c.handler.buffer[0]) + + def test_consistent_mutables(self): + c = LogCapture() + parser = OptionParser() + c.addOptions(parser) + c.start() + log = logging.getLogger("mutable") + mutable = { 'value': 1 } + log.debug("%r", mutable) + repr_1 = repr(mutable) + mutable['value'] = 2 + log.debug("%r", mutable) + repr_2 = repr(mutable) + c.end() + records = c.formatLogRecords() + eq_("mutable: DEBUG: %s" % (repr_1,), records[0]) + eq_("mutable: DEBUG: %s" % (repr_2,), records[1]) def test_loglevel(self): c = LogCapture() @@ -92,7 +109,7 @@ class TestLogCapturePlugin(object): c.end() records = c.formatLogRecords() eq_(1, len(c.handler.buffer)) - eq_("Goodbye", c.handler.buffer[0].msg) + eq_("loglevel: INFO: Goodbye", c.handler.buffer[0]) eq_("loglevel: INFO: Goodbye", records[0]) def test_clears_all_existing_log_handlers(self): |