mirror of
https://github.com/getpelican/pelican.git
synced 2026-06-02 23:16:55 +02:00
Add regression tests
This commit is contained in:
parent
374ab37612
commit
6a2724cccc
1 changed files with 42 additions and 0 deletions
|
|
@ -73,3 +73,45 @@ class TestLog(unittest.TestCase):
|
|||
self.assertEqual(
|
||||
self.handler.count_logs("Another log \\d", logging.WARNING), 0
|
||||
)
|
||||
|
||||
def test_filtered_warning_no_raise_with_fatal_warnings(self):
|
||||
log.FatalLogger.fatal_lvl = logging.WARNING
|
||||
try:
|
||||
log.LimitFilter._ignore.add((logging.WARNING, "Filtered %s"))
|
||||
# Should not raise because the message is filtered out.
|
||||
self.logger.warning("Filtered %s", "msg")
|
||||
finally:
|
||||
log.FatalLogger.fatal_lvl = logging.CRITICAL + 1
|
||||
|
||||
def test_unfiltered_warning_raises_with_fatal_warnings(self):
|
||||
log.FatalLogger.fatal_lvl = logging.WARNING
|
||||
try:
|
||||
with self.assertRaises(RuntimeError):
|
||||
self.logger.warning("Unfiltered warning")
|
||||
finally:
|
||||
log.FatalLogger.fatal_lvl = logging.CRITICAL + 1
|
||||
|
||||
def test_filtered_error_no_raise_with_fatal_errors(self):
|
||||
log.FatalLogger.fatal_lvl = logging.ERROR
|
||||
try:
|
||||
log.LimitFilter._ignore.add((logging.WARNING, "Filtered error %s"))
|
||||
# Errors go through LimitFilter (levelno > WARNING returns True),
|
||||
# but we can test with a duplicate message which gets filtered.
|
||||
self.logger.warning("Some warning")
|
||||
self._reset_limit_filter()
|
||||
# Use _ignore to filter an error-level record by lowering dedup level.
|
||||
log.LimitFilter.LOGS_DEDUP_MIN_LEVEL = logging.ERROR
|
||||
log.LimitFilter._ignore.add((logging.ERROR, "Filtered error %s"))
|
||||
self.logger.error("Filtered error %s", "msg")
|
||||
finally:
|
||||
log.FatalLogger.fatal_lvl = logging.CRITICAL + 1
|
||||
log.LimitFilter.LOGS_DEDUP_MIN_LEVEL = logging.WARNING
|
||||
|
||||
def test_critical_never_raises(self):
|
||||
log.FatalLogger.fatal_lvl = logging.WARNING
|
||||
try:
|
||||
# CRITICAL should not raise even though it's above fatal_lvl,
|
||||
# because main() catches RuntimeError and logs its own critical.
|
||||
self.logger.critical("Critical message")
|
||||
finally:
|
||||
log.FatalLogger.fatal_lvl = logging.CRITICAL + 1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue