Clear logger handlers for log tests

This commit is contained in:
Florian Bruhin 2014-05-27 16:23:27 +02:00
parent 1ff193e4dd
commit 0cac061feb

View File

@ -84,20 +84,22 @@ class RAMHandlerTests(TestCase):
"""Tests for RAMHandler. """Tests for RAMHandler.
Attributes: Attributes:
level: The level the root logger had before executing the test.
logger: The logger we use to log to the handler. logger: The logger we use to log to the handler.
handler: The RAMHandler we're testing. handler: The RAMHandler we're testing.
old_level: The level the root logger had before executing the test.
old_handlers: The handlers the root logger had before executing the
test.
""" """
def setUp(self): def setUp(self):
root = logging.getLogger() self.logger = logging.getLogger()
self.level = root.level self.old_level = self.logger.level
root.setLevel(logging.NOTSET) self.old_handlers = self.logger.handlers
self.logger.handlers = []
self.logger.setLevel(logging.NOTSET)
self.handler = log.RAMHandler(capacity=2) self.handler = log.RAMHandler(capacity=2)
self.handler.setLevel(logging.NOTSET) self.handler.setLevel(logging.NOTSET)
self.logger = logging.getLogger("foo")
self.logger.addHandler(self.handler) self.logger.addHandler(self.handler)
self.logger.setLevel(logging.NOTSET)
def test_filled(self): def test_filled(self):
"""Test handler with exactly as much records as it can hold.""" """Test handler with exactly as much records as it can hold."""
@ -124,8 +126,9 @@ class RAMHandlerTests(TestCase):
self.assertEqual(self.handler.dump_log(), "Two\nThree") self.assertEqual(self.handler.dump_log(), "Two\nThree")
def tearDown(self): def tearDown(self):
"""Restore the original root logger level.""" """Restore the original root logger level and handlers."""
logging.getLogger().level = self.level self.logger.level = self.old_level
self.logger.handlers = self.old_handlers
if __name__ == '__main__': if __name__ == '__main__':