summaryrefslogtreecommitdiff
path: root/tests/test_runner
diff options
context:
space:
mode:
authorDaniyal <abbasi.daniyal98@gmail.com>2021-03-19 14:50:08 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-06-01 13:31:44 +0200
commita0410ffe8f43d8dcfbaa261e068879698fafdca3 (patch)
tree61365ebcb837198310827c7129af9cea9257a636 /tests/test_runner
parentcd19db10df6225e01b77685397a88c9cdf216dd1 (diff)
Refs #32552 -- Added DiscoverRunner.log() to allow customization.
Thanks Carlton Gibson, Chris Jerdonek, and David Smith for reviews.
Diffstat (limited to 'tests/test_runner')
-rw-r--r--tests/test_runner/test_discover_runner.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/test_runner/test_discover_runner.py b/tests/test_runner/test_discover_runner.py
index 8f360292f1..d4ec6e97e1 100644
--- a/tests/test_runner/test_discover_runner.py
+++ b/tests/test_runner/test_discover_runner.py
@@ -1,3 +1,4 @@
+import logging
import os
import unittest.loader
from argparse import ArgumentParser
@@ -378,6 +379,43 @@ class DiscoverRunnerTests(SimpleTestCase):
self.assertTrue(isinstance(runner.time_keeper, TimeKeeper))
self.assertIn('test', stderr.getvalue())
+ def test_log(self):
+ custom_low_level = 5
+ custom_high_level = 45
+ msg = 'logging message'
+ cases = [
+ (0, None, False),
+ (0, custom_low_level, False),
+ (0, logging.DEBUG, False),
+ (0, logging.INFO, False),
+ (0, logging.WARNING, False),
+ (0, custom_high_level, False),
+ (1, None, True),
+ (1, custom_low_level, False),
+ (1, logging.DEBUG, False),
+ (1, logging.INFO, True),
+ (1, logging.WARNING, True),
+ (1, custom_high_level, True),
+ (2, None, True),
+ (2, custom_low_level, True),
+ (2, logging.DEBUG, True),
+ (2, logging.INFO, True),
+ (2, logging.WARNING, True),
+ (2, custom_high_level, True),
+ (3, None, True),
+ (3, custom_low_level, True),
+ (3, logging.DEBUG, True),
+ (3, logging.INFO, True),
+ (3, logging.WARNING, True),
+ (3, custom_high_level, True),
+ ]
+ for verbosity, level, output in cases:
+ with self.subTest(verbosity=verbosity, level=level):
+ with captured_stdout() as stdout:
+ runner = DiscoverRunner(verbosity=verbosity)
+ runner.log(msg, level)
+ self.assertEqual(stdout.getvalue(), f'{msg}\n' if output else '')
+
class DiscoverRunnerGetDatabasesTests(SimpleTestCase):
runner = DiscoverRunner(verbosity=2)