Additional testing for logger component
Added an additional test for the logger component the validates the filtering logic of the filters that were created during setup.
This commit is contained in:
parent
4cc9606bcc
commit
de61bcb80e
1 changed files with 36 additions and 6 deletions
|
@ -4,22 +4,30 @@ tests.test_logger
|
|||
|
||||
Tests logger component.
|
||||
"""
|
||||
from collections import namedtuple
|
||||
import logging
|
||||
import unittest
|
||||
|
||||
from homeassistant.components import logger
|
||||
|
||||
RECORD = namedtuple('record', ('name', 'levelno'))
|
||||
|
||||
|
||||
class TestUpdater(unittest.TestCase):
|
||||
""" Test logger component. """
|
||||
|
||||
def test_logger(self):
|
||||
""" Uses logger to create a logging filter """
|
||||
config = {'logger':
|
||||
{'default': 'warning',
|
||||
'logs': {'test': 'info'}}}
|
||||
def setUp(self):
|
||||
""" Create default config """
|
||||
self.log_config = {'logger':
|
||||
{'default': 'warning', 'logs': {'test': 'info'}}}
|
||||
|
||||
logger.setup(None, config)
|
||||
def tearDown(self):
|
||||
""" Reset logs """
|
||||
del logging.root.handlers[-1]
|
||||
|
||||
def test_logger_setup(self):
|
||||
""" Uses logger to create a logging filter """
|
||||
logger.setup(None, self.log_config)
|
||||
|
||||
self.assertTrue(len(logging.root.handlers) > 0)
|
||||
handler = logging.root.handlers[-1]
|
||||
|
@ -29,3 +37,25 @@ class TestUpdater(unittest.TestCase):
|
|||
|
||||
self.assertEqual(log_filter['default'], logging.WARNING)
|
||||
self.assertEqual(log_filter['logs']['test'], logging.INFO)
|
||||
|
||||
def test_logger_test_filters(self):
|
||||
""" Tests resulting filter operation """
|
||||
logger.setup(None, self.log_config)
|
||||
|
||||
log_filter = logging.root.handlers[-1].filters[0]
|
||||
|
||||
# blocked default record
|
||||
record = RECORD('asdf', logging.DEBUG)
|
||||
self.assertFalse(log_filter.filter(record))
|
||||
|
||||
# allowed default record
|
||||
record = RECORD('asdf', logging.WARNING)
|
||||
self.assertTrue(log_filter.filter(record))
|
||||
|
||||
# blocked named record
|
||||
record = RECORD('test', logging.DEBUG)
|
||||
self.assertFalse(log_filter.filter(record))
|
||||
|
||||
# allowed named record
|
||||
record = RECORD('test', logging.INFO)
|
||||
self.assertTrue(log_filter.filter(record))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue