diff options
| author | Daniyal <abbasi.daniyal98@gmail.com> | 2021-03-19 14:50:08 +0530 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2021-06-01 13:31:44 +0200 |
| commit | a0410ffe8f43d8dcfbaa261e068879698fafdca3 (patch) | |
| tree | 61365ebcb837198310827c7129af9cea9257a636 /tests/test_runner | |
| parent | cd19db10df6225e01b77685397a88c9cdf216dd1 (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.py | 38 |
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) |
