annotate Lib/test/test_logging.py @ 78069:a8aa77458e12 3.2

Add c_size_t and c_ssize_t to the ctypes summary table.
author Antoine Pitrou <solipsis@pitrou.net>
date Thu, 12 Jul 2012 20:31:50 +0200
parents a0023e779bce
children d7660ccd8470 73d9f608b5c7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
1 #!/usr/bin/env python
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2 #
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
3 # Copyright 2001-2012 by Vinay Sajip. All Rights Reserved.
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
4 #
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
5 # Permission to use, copy, modify, and distribute this software and its
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
6 # documentation for any purpose and without fee is hereby granted,
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
7 # provided that the above copyright notice appear in all copies and that
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
8 # both that copyright notice and this permission notice appear in
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
9 # supporting documentation, and that the name of Vinay Sajip
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
10 # not be used in advertising or publicity pertaining to distribution
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
11 # of the software without specific, written prior permission.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
12 # VINAY SAJIP DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
13 # ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
14 # VINAY SAJIP BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
15 # ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
16 # IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
17 # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
18
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
19 """Test harness for the logging module. Run all tests.
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
20
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
21 Copyright (C) 2001-2012 Vinay Sajip. All Rights Reserved.
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
22 """
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
23
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
24 import logging
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
25 import logging.handlers
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
26 import logging.config
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
27
51579
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
28 import codecs
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
29 import datetime
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
30 import pickle
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
31 import io
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
32 import gc
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
33 import json
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
34 import os
64730
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
35 import queue
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
36 import random
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
37 import re
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
38 import select
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
39 import socket
46933
aca5c1d1c569 Renamed the SocketServer module to 'socketserver'.
Alexandre Vassalotti <alexandre@peadrop.com>
parents: 46222
diff changeset
40 from socketserver import ThreadingTCPServer, StreamRequestHandler
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
41 import struct
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
42 import sys
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
43 import tempfile
47201
9c930a32cebb #2621 rename test.test_support to test.support
Benjamin Peterson <benjamin@python.org>
parents: 46933
diff changeset
44 from test.support import captured_stdout, run_with_locale, run_unittest
69382
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
45 from test.support import TestHandler, Matcher
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
46 import textwrap
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
47 import time
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
48 import unittest
50074
024a9897c651 Merged revisions 67511,67536-67537,67543 via svnmerge from
Georg Brandl <georg@python.org>
parents: 49137
diff changeset
49 import warnings
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
50 import weakref
61073
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
51 try:
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
52 import threading
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
53 except ImportError:
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
54 threading = None
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
55
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
56
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
57 class BaseTest(unittest.TestCase):
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
58
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
59 """Base class for logging tests."""
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
60
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
61 log_format = "%(name)s -> %(levelname)s: %(message)s"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
62 expected_log_pat = r"^([\w.]+) -> ([\w]+): ([\d]+)$"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
63 message_num = 0
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
64
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
65 def setUp(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
66 """Setup the default logging stream to an internal StringIO instance,
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
67 so that we can examine log output as we want."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
68 logger_dict = logging.getLogger().manager.loggerDict
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
69 logging._acquireLock()
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
70 try:
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
71 self.saved_handlers = logging._handlers.copy()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
72 self.saved_handler_list = logging._handlerList[:]
67157
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
73 self.saved_loggers = saved_loggers = logger_dict.copy()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
74 self.saved_level_names = logging._levelNames.copy()
67157
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
75 self.logger_states = logger_states = {}
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
76 for name in saved_loggers:
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
77 logger_states[name] = getattr(saved_loggers[name],
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
78 'disabled', None)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
79 finally:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
80 logging._releaseLock()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
81
60506
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
82 # Set two unused loggers: one non-ASCII and one Unicode.
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
83 # This is to test correct operation when sorting existing
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
84 # loggers in the configuration code. See issue 8201.
64847
ec028067049d logging: Add hasHandlers() method to Logger.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64804
diff changeset
85 self.logger1 = logging.getLogger("\xab\xd7\xbb")
ec028067049d logging: Add hasHandlers() method to Logger.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64804
diff changeset
86 self.logger2 = logging.getLogger("\u013f\u00d6\u0047")
60506
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
87
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
88 self.root_logger = logging.getLogger("")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
89 self.original_logging_level = self.root_logger.getEffectiveLevel()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
90
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
91 self.stream = io.StringIO()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
92 self.root_logger.setLevel(logging.DEBUG)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
93 self.root_hdlr = logging.StreamHandler(self.stream)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
94 self.root_formatter = logging.Formatter(self.log_format)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
95 self.root_hdlr.setFormatter(self.root_formatter)
67231
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
96 if self.logger1.hasHandlers():
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
97 hlist = self.logger1.handlers + self.root_logger.handlers
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
98 raise AssertionError('Unexpected handlers: %s' % hlist)
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
99 if self.logger2.hasHandlers():
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
100 hlist = self.logger2.handlers + self.root_logger.handlers
0dfb8397a973 Issue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67157
diff changeset
101 raise AssertionError('Unexpected handlers: %s' % hlist)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
102 self.root_logger.addHandler(self.root_hdlr)
64847
ec028067049d logging: Add hasHandlers() method to Logger.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64804
diff changeset
103 self.assertTrue(self.logger1.hasHandlers())
ec028067049d logging: Add hasHandlers() method to Logger.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64804
diff changeset
104 self.assertTrue(self.logger2.hasHandlers())
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
105
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
106 def tearDown(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
107 """Remove our logging stream, and restore the original logging
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
108 level."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
109 self.stream.close()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
110 self.root_logger.removeHandler(self.root_hdlr)
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
111 while self.root_logger.handlers:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
112 h = self.root_logger.handlers[0]
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
113 self.root_logger.removeHandler(h)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
114 h.close()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
115 self.root_logger.setLevel(self.original_logging_level)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
116 logging._acquireLock()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
117 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
118 logging._levelNames.clear()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
119 logging._levelNames.update(self.saved_level_names)
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
120 logging._handlers.clear()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
121 logging._handlers.update(self.saved_handlers)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
122 logging._handlerList[:] = self.saved_handler_list
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
123 loggerDict = logging.getLogger().manager.loggerDict
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
124 loggerDict.clear()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
125 loggerDict.update(self.saved_loggers)
67157
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
126 logger_states = self.logger_states
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
127 for name in self.logger_states:
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
128 if logger_states[name] is not None:
efdc5d0d81b7 Issue #10626: test_logging now preserves logger disabled states.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67156
diff changeset
129 self.saved_loggers[name].disabled = logger_states[name]
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
130 finally:
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
131 logging._releaseLock()
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
132
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
133 def assert_log_lines(self, expected_values, stream=None):
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
134 """Match the collected log lines against the regular expression
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
135 self.expected_log_pat, and compare the extracted group values to
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
136 the expected_values list of tuples."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
137 stream = stream or self.stream
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
138 pat = re.compile(self.expected_log_pat)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
139 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
140 stream.reset()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
141 actual_lines = stream.readlines()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
142 except AttributeError:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
143 # StringIO.StringIO lacks a reset() method.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
144 actual_lines = stream.getvalue().splitlines()
66310
9fe76c26ea9f #9424: Replace deprecated assert* methods in the Python test suite.
Ezio Melotti <ezio.melotti@gmail.com>
parents: 65757
diff changeset
145 self.assertEqual(len(actual_lines), len(expected_values),
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
146 '%s vs. %s' % (actual_lines, expected_values))
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
147 for actual, expected in zip(actual_lines, expected_values):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
148 match = pat.search(actual)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
149 if not match:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
150 self.fail("Log line does not match expected pattern:\n" +
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
151 actual)
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 58218
diff changeset
152 self.assertEqual(tuple(match.groups()), expected)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
153 s = stream.read()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
154 if s:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
155 self.fail("Remaining output at end of log stream:\n" + s)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
156
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
157 def next_message(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
158 """Generate a message consisting solely of an auto-incrementing
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
159 integer."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
160 self.message_num += 1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
161 return "%d" % self.message_num
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
162
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
163
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
164 class BuiltinLevelsTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
165 """Test builtin levels and their inheritance."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
166
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
167 def test_flat(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
168 #Logging levels in a flat logger namespace.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
169 m = self.next_message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
170
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
171 ERR = logging.getLogger("ERR")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
172 ERR.setLevel(logging.ERROR)
64866
e90427984442 Added some methods to LoggerAdapter, and updated documentation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64847
diff changeset
173 INF = logging.LoggerAdapter(logging.getLogger("INF"), {})
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
174 INF.setLevel(logging.INFO)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
175 DEB = logging.getLogger("DEB")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
176 DEB.setLevel(logging.DEBUG)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
177
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
178 # These should log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
179 ERR.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
180 ERR.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
181
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
182 INF.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
183 INF.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
184 INF.warn(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
185 INF.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
186
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
187 DEB.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
188 DEB.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
189 DEB.warn (m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
190 DEB.info (m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
191 DEB.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
192
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
193 # These should not log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
194 ERR.warn(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
195 ERR.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
196 ERR.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
197
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
198 INF.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
199
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
200 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
201 ('ERR', 'CRITICAL', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
202 ('ERR', 'ERROR', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
203 ('INF', 'CRITICAL', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
204 ('INF', 'ERROR', '4'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
205 ('INF', 'WARNING', '5'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
206 ('INF', 'INFO', '6'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
207 ('DEB', 'CRITICAL', '7'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
208 ('DEB', 'ERROR', '8'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
209 ('DEB', 'WARNING', '9'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
210 ('DEB', 'INFO', '10'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
211 ('DEB', 'DEBUG', '11'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
212 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
213
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
214 def test_nested_explicit(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
215 # Logging levels in a nested namespace, all explicitly set.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
216 m = self.next_message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
217
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
218 INF = logging.getLogger("INF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
219 INF.setLevel(logging.INFO)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
220 INF_ERR = logging.getLogger("INF.ERR")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
221 INF_ERR.setLevel(logging.ERROR)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
222
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
223 # These should log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
224 INF_ERR.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
225 INF_ERR.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
226
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
227 # These should not log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
228 INF_ERR.warn(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
229 INF_ERR.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
230 INF_ERR.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
231
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
232 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
233 ('INF.ERR', 'CRITICAL', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
234 ('INF.ERR', 'ERROR', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
235 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
236
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
237 def test_nested_inherited(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
238 #Logging levels in a nested namespace, inherited from parent loggers.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
239 m = self.next_message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
240
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
241 INF = logging.getLogger("INF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
242 INF.setLevel(logging.INFO)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
243 INF_ERR = logging.getLogger("INF.ERR")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
244 INF_ERR.setLevel(logging.ERROR)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
245 INF_UNDEF = logging.getLogger("INF.UNDEF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
246 INF_ERR_UNDEF = logging.getLogger("INF.ERR.UNDEF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
247 UNDEF = logging.getLogger("UNDEF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
248
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
249 # These should log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
250 INF_UNDEF.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
251 INF_UNDEF.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
252 INF_UNDEF.warn(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
253 INF_UNDEF.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
254 INF_ERR_UNDEF.log(logging.CRITICAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
255 INF_ERR_UNDEF.error(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
256
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
257 # These should not log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
258 INF_UNDEF.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
259 INF_ERR_UNDEF.warn(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
260 INF_ERR_UNDEF.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
261 INF_ERR_UNDEF.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
262
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
263 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
264 ('INF.UNDEF', 'CRITICAL', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
265 ('INF.UNDEF', 'ERROR', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
266 ('INF.UNDEF', 'WARNING', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
267 ('INF.UNDEF', 'INFO', '4'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
268 ('INF.ERR.UNDEF', 'CRITICAL', '5'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
269 ('INF.ERR.UNDEF', 'ERROR', '6'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
270 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
271
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
272 def test_nested_with_virtual_parent(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
273 # Logging levels when some parent does not exist yet.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
274 m = self.next_message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
275
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
276 INF = logging.getLogger("INF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
277 GRANDCHILD = logging.getLogger("INF.BADPARENT.UNDEF")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
278 CHILD = logging.getLogger("INF.BADPARENT")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
279 INF.setLevel(logging.INFO)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
280
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
281 # These should log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
282 GRANDCHILD.log(logging.FATAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
283 GRANDCHILD.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
284 CHILD.log(logging.FATAL, m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
285 CHILD.info(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
286
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
287 # These should not log.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
288 GRANDCHILD.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
289 CHILD.debug(m())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
290
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
291 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
292 ('INF.BADPARENT.UNDEF', 'CRITICAL', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
293 ('INF.BADPARENT.UNDEF', 'INFO', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
294 ('INF.BADPARENT', 'CRITICAL', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
295 ('INF.BADPARENT', 'INFO', '4'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
296 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
297
73416
a3ba905447ba Closes #13661: Check added for type of logger name.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 69781
diff changeset
298 def test_invalid_name(self):
73419
bc05c11b340e Closes #13361: Raise correct exception type.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73416
diff changeset
299 self.assertRaises(TypeError, logging.getLogger, any)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
300
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
301 class BasicFilterTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
302
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
303 """Test the bundled Filter class."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
304
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
305 def test_filter(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
306 # Only messages satisfying the specified criteria pass through the
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
307 # filter.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
308 filter_ = logging.Filter("spam.eggs")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
309 handler = self.root_logger.handlers[0]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
310 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
311 handler.addFilter(filter_)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
312 spam = logging.getLogger("spam")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
313 spam_eggs = logging.getLogger("spam.eggs")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
314 spam_eggs_fish = logging.getLogger("spam.eggs.fish")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
315 spam_bakedbeans = logging.getLogger("spam.bakedbeans")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
316
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
317 spam.info(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
318 spam_eggs.info(self.next_message()) # Good.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
319 spam_eggs_fish.info(self.next_message()) # Good.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
320 spam_bakedbeans.info(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
321
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
322 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
323 ('spam.eggs', 'INFO', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
324 ('spam.eggs.fish', 'INFO', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
325 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
326 finally:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
327 handler.removeFilter(filter_)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
328
65547
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
329 def test_callable_filter(self):
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
330 # Only messages satisfying the specified criteria pass through the
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
331 # filter.
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
332
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
333 def filterfunc(record):
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
334 parts = record.name.split('.')
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
335 prefix = '.'.join(parts[:2])
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
336 return prefix == 'spam.eggs'
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
337
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
338 handler = self.root_logger.handlers[0]
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
339 try:
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
340 handler.addFilter(filterfunc)
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
341 spam = logging.getLogger("spam")
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
342 spam_eggs = logging.getLogger("spam.eggs")
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
343 spam_eggs_fish = logging.getLogger("spam.eggs.fish")
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
344 spam_bakedbeans = logging.getLogger("spam.bakedbeans")
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
345
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
346 spam.info(self.next_message())
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
347 spam_eggs.info(self.next_message()) # Good.
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
348 spam_eggs_fish.info(self.next_message()) # Good.
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
349 spam_bakedbeans.info(self.next_message())
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
350
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
351 self.assert_log_lines([
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
352 ('spam.eggs', 'INFO', '2'),
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
353 ('spam.eggs.fish', 'INFO', '3'),
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
354 ])
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
355 finally:
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
356 handler.removeFilter(filterfunc)
e11ac30199b1 logging: Allowed filters to be just callables.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65546
diff changeset
357
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
358
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
359 #
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
360 # First, we define our levels. There can be as many as you want - the only
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
361 # limitations are that they should be integers, the lowest should be > 0 and
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
362 # larger values mean less information being logged. If you need specific
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
363 # level values which do not fit into these limitations, you can use a
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
364 # mapping dictionary to convert between your application levels and the
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
365 # logging system.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
366 #
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
367 SILENT = 120
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
368 TACITURN = 119
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
369 TERSE = 118
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
370 EFFUSIVE = 117
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
371 SOCIABLE = 116
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
372 VERBOSE = 115
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
373 TALKATIVE = 114
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
374 GARRULOUS = 113
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
375 CHATTERBOX = 112
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
376 BORING = 111
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
377
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
378 LEVEL_RANGE = range(BORING, SILENT + 1)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
379
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
380 #
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
381 # Next, we define names for our levels. You don't need to do this - in which
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
382 # case the system will use "Level n" to denote the text for the level.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
383 #
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
384 my_logging_levels = {
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
385 SILENT : 'Silent',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
386 TACITURN : 'Taciturn',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
387 TERSE : 'Terse',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
388 EFFUSIVE : 'Effusive',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
389 SOCIABLE : 'Sociable',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
390 VERBOSE : 'Verbose',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
391 TALKATIVE : 'Talkative',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
392 GARRULOUS : 'Garrulous',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
393 CHATTERBOX : 'Chatterbox',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
394 BORING : 'Boring',
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
395 }
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
396
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
397 class GarrulousFilter(logging.Filter):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
398
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
399 """A filter which blocks garrulous messages."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
400
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
401 def filter(self, record):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
402 return record.levelno != GARRULOUS
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
403
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
404 class VerySpecificFilter(logging.Filter):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
405
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
406 """A filter which blocks sociable and taciturn messages."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
407
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
408 def filter(self, record):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
409 return record.levelno not in [SOCIABLE, TACITURN]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
410
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
411
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
412 class CustomLevelsAndFiltersTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
413
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
414 """Test various filtering possibilities with custom logging levels."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
415
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
416 # Skip the logger name group.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
417 expected_log_pat = r"^[\w.]+ -> ([\w]+): ([\d]+)$"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
418
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
419 def setUp(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
420 BaseTest.setUp(self)
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
421 for k, v in my_logging_levels.items():
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
422 logging.addLevelName(k, v)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
423
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
424 def log_at_all_levels(self, logger):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
425 for lvl in LEVEL_RANGE:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
426 logger.log(lvl, self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
427
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
428 def test_logger_filter(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
429 # Filter at logger level.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
430 self.root_logger.setLevel(VERBOSE)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
431 # Levels >= 'Verbose' are good.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
432 self.log_at_all_levels(self.root_logger)
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
433 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
434 ('Verbose', '5'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
435 ('Sociable', '6'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
436 ('Effusive', '7'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
437 ('Terse', '8'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
438 ('Taciturn', '9'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
439 ('Silent', '10'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
440 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
441
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
442 def test_handler_filter(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
443 # Filter at handler level.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
444 self.root_logger.handlers[0].setLevel(SOCIABLE)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
445 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
446 # Levels >= 'Sociable' are good.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
447 self.log_at_all_levels(self.root_logger)
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
448 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
449 ('Sociable', '6'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
450 ('Effusive', '7'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
451 ('Terse', '8'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
452 ('Taciturn', '9'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
453 ('Silent', '10'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
454 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
455 finally:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
456 self.root_logger.handlers[0].setLevel(logging.NOTSET)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
457
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
458 def test_specific_filters(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
459 # Set a specific filter object on the handler, and then add another
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
460 # filter object on the logger itself.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
461 handler = self.root_logger.handlers[0]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
462 specific_filter = None
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
463 garr = GarrulousFilter()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
464 handler.addFilter(garr)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
465 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
466 self.log_at_all_levels(self.root_logger)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
467 first_lines = [
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
468 # Notice how 'Garrulous' is missing
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
469 ('Boring', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
470 ('Chatterbox', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
471 ('Talkative', '4'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
472 ('Verbose', '5'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
473 ('Sociable', '6'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
474 ('Effusive', '7'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
475 ('Terse', '8'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
476 ('Taciturn', '9'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
477 ('Silent', '10'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
478 ]
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
479 self.assert_log_lines(first_lines)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
480
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
481 specific_filter = VerySpecificFilter()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
482 self.root_logger.addFilter(specific_filter)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
483 self.log_at_all_levels(self.root_logger)
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
484 self.assert_log_lines(first_lines + [
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
485 # Not only 'Garrulous' is still missing, but also 'Sociable'
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
486 # and 'Taciturn'
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
487 ('Boring', '11'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
488 ('Chatterbox', '12'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
489 ('Talkative', '14'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
490 ('Verbose', '15'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
491 ('Effusive', '17'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
492 ('Terse', '18'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
493 ('Silent', '20'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
494 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
495 finally:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
496 if specific_filter:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
497 self.root_logger.removeFilter(specific_filter)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
498 handler.removeFilter(garr)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
499
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
500
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
501 class MemoryHandlerTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
502
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
503 """Tests for the MemoryHandler."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
504
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
505 # Do not bother with a logger name group.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
506 expected_log_pat = r"^[\w.]+ -> ([\w]+): ([\d]+)$"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
507
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
508 def setUp(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
509 BaseTest.setUp(self)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
510 self.mem_hdlr = logging.handlers.MemoryHandler(10, logging.WARNING,
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
511 self.root_hdlr)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
512 self.mem_logger = logging.getLogger('mem')
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
513 self.mem_logger.propagate = 0
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
514 self.mem_logger.addHandler(self.mem_hdlr)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
515
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
516 def tearDown(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
517 self.mem_hdlr.close()
46222
aed698c8647b Merged revisions 62021,62029,62035-62038,62043-62044,62052-62053 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 45635
diff changeset
518 BaseTest.tearDown(self)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
519
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
520 def test_flush(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
521 # The memory handler flushes to its target handler based on specific
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
522 # criteria (message count and message level).
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
523 self.mem_logger.debug(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
524 self.assert_log_lines([])
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
525 self.mem_logger.info(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
526 self.assert_log_lines([])
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
527 # This will flush because the level is >= logging.WARNING
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
528 self.mem_logger.warn(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
529 lines = [
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
530 ('DEBUG', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
531 ('INFO', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
532 ('WARNING', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
533 ]
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
534 self.assert_log_lines(lines)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
535 for n in (4, 14):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
536 for i in range(9):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
537 self.mem_logger.debug(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
538 self.assert_log_lines(lines)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
539 # This will flush because it's the 10th message since the last
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
540 # flush.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
541 self.mem_logger.debug(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
542 lines = lines + [('DEBUG', str(i)) for i in range(n, n + 10)]
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
543 self.assert_log_lines(lines)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
544
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
545 self.mem_logger.debug(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
546 self.assert_log_lines(lines)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
547
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
548
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
549 class ExceptionFormatter(logging.Formatter):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
550 """A special exception formatter."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
551 def formatException(self, ei):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
552 return "Got a [%s]" % ei[0].__name__
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
553
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
554
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
555 class ConfigFileTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
556
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
557 """Reading logging config from a .ini-style config file."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
558
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
559 expected_log_pat = r"^([\w]+) \+\+ ([\w]+)$"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
560
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
561 # config0 is a standard configuration.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
562 config0 = """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
563 [loggers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
564 keys=root
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
565
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
566 [handlers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
567 keys=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
568
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
569 [formatters]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
570 keys=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
571
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
572 [logger_root]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
573 level=WARNING
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
574 handlers=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
575
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
576 [handler_hand1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
577 class=StreamHandler
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
578 level=NOTSET
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
579 formatter=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
580 args=(sys.stdout,)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
581
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
582 [formatter_form1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
583 format=%(levelname)s ++ %(message)s
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
584 datefmt=
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
585 """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
586
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
587 # config1 adds a little to the standard configuration.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
588 config1 = """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
589 [loggers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
590 keys=root,parser
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
591
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
592 [handlers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
593 keys=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
594
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
595 [formatters]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
596 keys=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
597
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
598 [logger_root]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
599 level=WARNING
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
600 handlers=
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
601
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
602 [logger_parser]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
603 level=DEBUG
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
604 handlers=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
605 propagate=1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
606 qualname=compiler.parser
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
607
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
608 [handler_hand1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
609 class=StreamHandler
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
610 level=NOTSET
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
611 formatter=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
612 args=(sys.stdout,)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
613
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
614 [formatter_form1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
615 format=%(levelname)s ++ %(message)s
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
616 datefmt=
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
617 """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
618
68317
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
619 # config1a moves the handler to the root.
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
620 config1a = """
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
621 [loggers]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
622 keys=root,parser
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
623
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
624 [handlers]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
625 keys=hand1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
626
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
627 [formatters]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
628 keys=form1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
629
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
630 [logger_root]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
631 level=WARNING
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
632 handlers=hand1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
633
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
634 [logger_parser]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
635 level=DEBUG
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
636 handlers=
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
637 propagate=1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
638 qualname=compiler.parser
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
639
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
640 [handler_hand1]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
641 class=StreamHandler
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
642 level=NOTSET
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
643 formatter=form1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
644 args=(sys.stdout,)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
645
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
646 [formatter_form1]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
647 format=%(levelname)s ++ %(message)s
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
648 datefmt=
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
649 """
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
650
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
651 # config2 has a subtle configuration error that should be reported
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
652 config2 = config1.replace("sys.stdout", "sys.stbout")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
653
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
654 # config3 has a less subtle configuration error
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
655 config3 = config1.replace("formatter=form1", "formatter=misspelled_name")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
656
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
657 # config4 specifies a custom formatter class to be loaded
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
658 config4 = """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
659 [loggers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
660 keys=root
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
661
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
662 [handlers]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
663 keys=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
664
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
665 [formatters]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
666 keys=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
667
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
668 [logger_root]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
669 level=NOTSET
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
670 handlers=hand1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
671
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
672 [handler_hand1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
673 class=StreamHandler
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
674 level=NOTSET
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
675 formatter=form1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
676 args=(sys.stdout,)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
677
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
678 [formatter_form1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
679 class=""" + __name__ + """.ExceptionFormatter
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
680 format=%(levelname)s:%(name)s:%(message)s
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
681 datefmt=
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
682 """
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
683
48563
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
684 # config5 specifies a custom handler class to be loaded
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
685 config5 = config1.replace('class=StreamHandler', 'class=logging.StreamHandler')
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
686
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
687 # config6 uses ', ' delimiters in the handlers and formatters sections
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
688 config6 = """
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
689 [loggers]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
690 keys=root,parser
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
691
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
692 [handlers]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
693 keys=hand1, hand2
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
694
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
695 [formatters]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
696 keys=form1, form2
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
697
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
698 [logger_root]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
699 level=WARNING
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
700 handlers=
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
701
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
702 [logger_parser]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
703 level=DEBUG
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
704 handlers=hand1
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
705 propagate=1
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
706 qualname=compiler.parser
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
707
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
708 [handler_hand1]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
709 class=StreamHandler
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
710 level=NOTSET
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
711 formatter=form1
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
712 args=(sys.stdout,)
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
713
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
714 [handler_hand2]
49137
17475eb55067 Merged revisions 66337,66347,66350,66352,66358 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 49095
diff changeset
715 class=StreamHandler
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
716 level=NOTSET
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
717 formatter=form1
49137
17475eb55067 Merged revisions 66337,66347,66350,66352,66358 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 49095
diff changeset
718 args=(sys.stderr,)
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
719
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
720 [formatter_form1]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
721 format=%(levelname)s ++ %(message)s
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
722 datefmt=
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
723
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
724 [formatter_form2]
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
725 format=%(message)s
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
726 datefmt=
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
727 """
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
728
68317
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
729 # config7 adds a compiler logger.
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
730 config7 = """
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
731 [loggers]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
732 keys=root,parser,compiler
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
733
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
734 [handlers]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
735 keys=hand1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
736
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
737 [formatters]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
738 keys=form1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
739
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
740 [logger_root]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
741 level=WARNING
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
742 handlers=hand1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
743
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
744 [logger_compiler]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
745 level=DEBUG
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
746 handlers=
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
747 propagate=1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
748 qualname=compiler
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
749
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
750 [logger_parser]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
751 level=DEBUG
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
752 handlers=
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
753 propagate=1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
754 qualname=compiler.parser
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
755
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
756 [handler_hand1]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
757 class=StreamHandler
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
758 level=NOTSET
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
759 formatter=form1
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
760 args=(sys.stdout,)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
761
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
762 [formatter_form1]
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
763 format=%(levelname)s ++ %(message)s
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
764 datefmt=
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
765 """
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
766
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
767 def apply_config(self, conf):
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
768 file = io.StringIO(textwrap.dedent(conf))
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
769 logging.config.fileConfig(file)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
770
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
771 def test_config0_ok(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
772 # A simple config file which overrides the default settings.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
773 with captured_stdout() as output:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
774 self.apply_config(self.config0)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
775 logger = logging.getLogger()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
776 # Won't output anything
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
777 logger.info(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
778 # Outputs a message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
779 logger.error(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
780 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
781 ('ERROR', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
782 ], stream=output)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
783 # Original logger output is empty.
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
784 self.assert_log_lines([])
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
785
48563
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
786 def test_config1_ok(self, config=config1):
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
787 # A config file defining a sub-parser as well.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
788 with captured_stdout() as output:
48563
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
789 self.apply_config(config)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
790 logger = logging.getLogger("compiler.parser")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
791 # Both will output a message
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
792 logger.info(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
793 logger.error(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
794 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
795 ('INFO', '1'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
796 ('ERROR', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
797 ], stream=output)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
798 # Original logger output is empty.
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
799 self.assert_log_lines([])
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
800
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
801 def test_config2_failure(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
802 # A simple config file which overrides the default settings.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
803 self.assertRaises(Exception, self.apply_config, self.config2)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
804
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
805 def test_config3_failure(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
806 # A simple config file which overrides the default settings.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
807 self.assertRaises(Exception, self.apply_config, self.config3)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
808
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
809 def test_config4_ok(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
810 # A config file specifying a custom formatter class.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
811 with captured_stdout() as output:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
812 self.apply_config(self.config4)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
813 logger = logging.getLogger()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
814 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
815 raise RuntimeError()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
816 except RuntimeError:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
817 logging.exception("just testing")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
818 sys.stdout.seek(0)
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 58218
diff changeset
819 self.assertEqual(output.getvalue(),
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
820 "ERROR:root:just testing\nGot a [RuntimeError]\n")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
821 # Original logger output is empty
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
822 self.assert_log_lines([])
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
823
48563
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
824 def test_config5_ok(self):
b51cd5d3795c Merged revisions 65012,65035,65037-65040,65048,65057,65077,65091-65095,65097-65099,65127-65128,65131,65133-65136,65139,65149-65151,65155,65158-65159,65176-65178,65183-65184,65187-65190,65192,65194 via svnmerge from
Georg Brandl <georg@python.org>
parents: 47201
diff changeset
825 self.test_config1_ok(config=self.config5)
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
826
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
827 def test_config6_ok(self):
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
828 self.test_config1_ok(config=self.config6)
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
829
68317
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
830 def test_config7_ok(self):
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
831 with captured_stdout() as output:
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
832 self.apply_config(self.config1a)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
833 logger = logging.getLogger("compiler.parser")
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
834 # See issue #11424. compiler-hyphenated sorts
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
835 # between compiler and compiler.xyz and this
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
836 # was preventing compiler.xyz from being included
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
837 # in the child loggers of compiler because of an
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
838 # overzealous loop termination condition.
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
839 hyphenated = logging.getLogger('compiler-hyphenated')
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
840 # All will output a message
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
841 logger.info(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
842 logger.error(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
843 hyphenated.critical(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
844 self.assert_log_lines([
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
845 ('INFO', '1'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
846 ('ERROR', '2'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
847 ('CRITICAL', '3'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
848 ], stream=output)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
849 # Original logger output is empty.
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
850 self.assert_log_lines([])
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
851 with captured_stdout() as output:
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
852 self.apply_config(self.config7)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
853 logger = logging.getLogger("compiler.parser")
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
854 self.assertFalse(logger.disabled)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
855 # Both will output a message
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
856 logger.info(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
857 logger.error(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
858 logger = logging.getLogger("compiler.lexer")
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
859 # Both will output a message
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
860 logger.info(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
861 logger.error(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
862 # Will not appear
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
863 hyphenated.critical(self.next_message())
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
864 self.assert_log_lines([
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
865 ('INFO', '4'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
866 ('ERROR', '5'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
867 ('INFO', '6'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
868 ('ERROR', '7'),
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
869 ], stream=output)
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
870 # Original logger output is empty.
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
871 self.assert_log_lines([])
d9125bf3bac5 Issue #11424: Fix bug in determining child loggers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66340
diff changeset
872
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
873 class LogRecordStreamHandler(StreamRequestHandler):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
874
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
875 """Handler for a streaming logging request. It saves the log message in the
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
876 TCP server's 'log_output' attribute."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
877
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
878 TCP_LOG_END = "!!!END!!!"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
879
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
880 def handle(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
881 """Handle multiple requests - each expected to be of 4-byte length,
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
882 followed by the LogRecord in pickle format. Logs the record
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
883 according to whatever policy is configured locally."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
884 while True:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
885 chunk = self.connection.recv(4)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
886 if len(chunk) < 4:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
887 break
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
888 slen = struct.unpack(">L", chunk)[0]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
889 chunk = self.connection.recv(slen)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
890 while len(chunk) < slen:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
891 chunk = chunk + self.connection.recv(slen - len(chunk))
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
892 obj = self.unpickle(chunk)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
893 record = logging.makeLogRecord(obj)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
894 self.handle_log_record(record)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
895
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
896 def unpickle(self, data):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
897 return pickle.loads(data)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
898
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
899 def handle_log_record(self, record):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
900 # If the end-of-messages sentinel is seen, tell the server to
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
901 # terminate.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
902 if self.TCP_LOG_END in record.msg:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
903 self.server.abort = 1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
904 return
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
905 self.server.log_output += record.msg + "\n"
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
906
28824
0cd8d570c591 New version from Vinaj, should solve the threading problems (hopefully).
Guido van Rossum <guido@python.org>
parents: 27932
diff changeset
907
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
908 class LogRecordSocketReceiver(ThreadingTCPServer):
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
909
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
910 """A simple-minded TCP socket-based logging receiver suitable for test
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
911 purposes."""
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
912
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
913 allow_reuse_address = 1
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
914 log_output = ""
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
915
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
916 def __init__(self, host='localhost',
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
917 port=logging.handlers.DEFAULT_TCP_LOGGING_PORT,
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
918 handler=LogRecordStreamHandler):
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
919 ThreadingTCPServer.__init__(self, (host, port), handler)
45460
58c3f3439670 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60849,60852-60854,60856-60859,60861-60870,60874-60875,60880-60881,60886,60888-60890,60892,60894-60898,60900,60902-60906,60908,60911-60917,60919-60920,60922,60926,60929-60931,60933-60935,60937,60939-60941,60943-60954,60959-60961,60963-60964,60966-60967,60971,60977,60979-60989 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45377
diff changeset
920 self.abort = False
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
921 self.timeout = 0.1
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
922 self.finished = threading.Event()
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
923
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
924 def serve_until_stopped(self):
36448
388a583e7a63 Get test_logging to not hang when running under regrtest.py -R ::
Neal Norwitz <nnorwitz@gmail.com>
parents: 36425
diff changeset
925 while not self.abort:
36843
1848d75bbdb3 Backout the last hack and add in this new one.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36825
diff changeset
926 rd, wr, ex = select.select([self.socket.fileno()], [], [],
1848d75bbdb3 Backout the last hack and add in this new one.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36825
diff changeset
927 self.timeout)
1848d75bbdb3 Backout the last hack and add in this new one.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36825
diff changeset
928 if rd:
1848d75bbdb3 Backout the last hack and add in this new one.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36825
diff changeset
929 self.handle_request()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
930 # Notify the main thread that we're about to exit
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
931 self.finished.set()
36423
29bfbb588d93 Explicitly close the server socket.
Martin v. Löwis <martin@v.loewis.de>
parents: 36350
diff changeset
932 # close the listen socket
29bfbb588d93 Explicitly close the server socket.
Martin v. Löwis <martin@v.loewis.de>
parents: 36350
diff changeset
933 self.server_close()
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
934
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
935
61073
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
936 @unittest.skipUnless(threading, 'Threading required for this test.')
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
937 class SocketHandlerTest(BaseTest):
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
938
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
939 """Test for SocketHandler objects."""
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
940
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
941 def setUp(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
942 """Set up a TCP server to receive log messages, and a SocketHandler
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
943 pointing to that server's address and port."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
944 BaseTest.setUp(self)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
945 self.tcpserver = LogRecordSocketReceiver(port=0)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
946 self.port = self.tcpserver.socket.getsockname()[1]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
947 self.threads = [
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
948 threading.Thread(target=self.tcpserver.serve_until_stopped)]
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
949 for thread in self.threads:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
950 thread.start()
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
951
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
952 self.sock_hdlr = logging.handlers.SocketHandler('localhost', self.port)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
953 self.sock_hdlr.setFormatter(self.root_formatter)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
954 self.root_logger.removeHandler(self.root_logger.handlers[0])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
955 self.root_logger.addHandler(self.sock_hdlr)
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
956
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
957 def tearDown(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
958 """Shutdown the TCP server."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
959 try:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
960 self.tcpserver.abort = True
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
961 del self.tcpserver
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
962 self.root_logger.removeHandler(self.sock_hdlr)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
963 self.sock_hdlr.close()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
964 for thread in self.threads:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
965 thread.join(2.0)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
966 finally:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
967 BaseTest.tearDown(self)
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
968
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
969 def get_output(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
970 """Get the log output as received by the TCP server."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
971 # Signal the TCP receiver and wait for it to terminate.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
972 self.root_logger.critical(LogRecordStreamHandler.TCP_LOG_END)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
973 self.tcpserver.finished.wait(2.0)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
974 return self.tcpserver.log_output
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
975
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
976 def test_output(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
977 # The log message sent to the SocketHandler is properly received.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
978 logger = logging.getLogger("tcp")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
979 logger.error("spam")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
980 logger.debug("eggs")
66340
2beb25369289 Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents: 58218
diff changeset
981 self.assertEqual(self.get_output(), "spam\neggs\n")
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
982
45460
58c3f3439670 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60849,60852-60854,60856-60859,60861-60870,60874-60875,60880-60881,60886,60888-60890,60892,60894-60898,60900,60902-60906,60908,60911-60917,60919-60920,60922,60926,60929-60931,60933-60935,60937,60939-60941,60943-60954,60959-60961,60963-60964,60966-60967,60971,60977,60979-60989 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45377
diff changeset
983
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
984 class MemoryTest(BaseTest):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
985
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
986 """Test memory persistence of logger objects."""
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
987
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
988 def setUp(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
989 """Create a dict to remember potentially destroyed objects."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
990 BaseTest.setUp(self)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
991 self._survivors = {}
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
992
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
993 def _watch_for_survival(self, *args):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
994 """Watch the given objects for survival, by creating weakrefs to
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
995 them."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
996 for obj in args:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
997 key = id(obj), repr(obj)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
998 self._survivors[key] = weakref.ref(obj)
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
999
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 53920
diff changeset
1000 def _assertTruesurvival(self):
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1001 """Assert that all objects watched for survival have survived."""
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1002 # Trigger cycle breaking.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1003 gc.collect()
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1004 dead = []
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1005 for (id_, repr_), ref in self._survivors.items():
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1006 if ref() is None:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1007 dead.append(repr_)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1008 if dead:
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1009 self.fail("%d objects should have survived "
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1010 "but have been destroyed: %s" % (len(dead), ", ".join(dead)))
36307
beceb8e66b0b Added test for fileConfig. Contributed by Shane Hathaway.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 36163
diff changeset
1011
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1012 def test_persistent_loggers(self):
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1013 # Logger objects are persistent and retain their configuration, even
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1014 # if visible references are destroyed.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1015 self.root_logger.setLevel(logging.INFO)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1016 foo = logging.getLogger("foo")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1017 self._watch_for_survival(foo)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1018 foo.setLevel(logging.DEBUG)
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1019 self.root_logger.debug(self.next_message())
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1020 foo.debug(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
1021 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1022 ('foo', 'DEBUG', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1023 ])
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1024 del foo
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1025 # foo has survived.
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 53920
diff changeset
1026 self._assertTruesurvival()
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1027 # foo has retained its settings.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1028 bar = logging.getLogger("foo")
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1029 bar.debug(self.next_message())
55594
d7f3cdf2b07f Merged revisions 73718,73721,73723 via svnmerge from
Georg Brandl <georg@python.org>
parents: 55593
diff changeset
1030 self.assert_log_lines([
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1031 ('foo', 'DEBUG', '2'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1032 ('foo', 'DEBUG', '3'),
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
1033 ])
36307
beceb8e66b0b Added test for fileConfig. Contributed by Shane Hathaway.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 36163
diff changeset
1034
51579
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1035
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1036 class EncodingTest(BaseTest):
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1037 def test_encoding_plain_file(self):
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1038 # In Python 2.x, a plain file object is treated as having no encoding.
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1039 log = logging.getLogger("test")
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
1040 fd, fn = tempfile.mkstemp(".log", "test_logging-1-")
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
1041 os.close(fd)
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1042 # the non-ascii data we write to the log.
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1043 data = "foo\x80"
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1044 try:
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1045 handler = logging.FileHandler(fn, encoding="utf-8")
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1046 log.addHandler(handler)
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1047 try:
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1048 # write non-ascii data to the log.
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1049 log.warning(data)
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1050 finally:
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1051 log.removeHandler(handler)
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1052 handler.close()
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1053 # check we wrote exactly those bytes, ignoring trailing \n etc
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1054 f = open(fn, encoding="utf-8")
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1055 try:
55593
0bb232078b8c Merged revisions 73715 via svnmerge from
Georg Brandl <georg@python.org>
parents: 53920
diff changeset
1056 self.assertEqual(f.read().rstrip(), data)
49095
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1057 finally:
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1058 f.close()
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1059 finally:
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1060 if os.path.isfile(fn):
4d148bb84a07 Merged revisions 66141,66145,66150,66180,66211,66217,66219,66226,66231,66244,66246,66249-66250,66264,66268,66272,66294,66306 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 48563
diff changeset
1061 os.remove(fn)
36307
beceb8e66b0b Added test for fileConfig. Contributed by Shane Hathaway.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 36163
diff changeset
1062
51579
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1063 def test_encoding_cyrillic_unicode(self):
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1064 log = logging.getLogger("test")
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1065 #Get a message in Unicode: Do svidanya in Cyrillic (meaning goodbye)
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1066 message = '\u0434\u043e \u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f'
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1067 #Ensure it's written in a Cyrillic encoding
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1068 writer_class = codecs.getwriter('cp1251')
53920
7a9e081ece4c Merged revisions 70768,71657,71721,71729,71794,71976,72036-72037,72079,72085,72131-72134,72191,72197-72198,72219,72221,72225,72303,72434,72467,72476 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 52891
diff changeset
1069 writer_class.encoding = 'cp1251'
51579
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1070 stream = io.BytesIO()
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1071 writer = writer_class(stream, 'strict')
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1072 handler = logging.StreamHandler(writer)
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1073 log.addHandler(handler)
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1074 try:
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1075 log.warning(message)
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1076 finally:
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1077 log.removeHandler(handler)
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1078 handler.close()
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1079 # check we wrote exactly those bytes, ignoring trailing \n etc
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1080 s = stream.getvalue()
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1081 #Compare against what the data should be when encoded in CP-1251
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1082 self.assertEqual(s, b'\xe4\xee \xf1\xe2\xe8\xe4\xe0\xed\xe8\xff\n')
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1083
648e07dd0825 Merged revisions 69364-69365,69409-69410,69413,69417,69435,69442,69447,69495,69519-69521 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 50074
diff changeset
1084
50074
024a9897c651 Merged revisions 67511,67536-67537,67543 via svnmerge from
Georg Brandl <georg@python.org>
parents: 49137
diff changeset
1085 class WarningsTest(BaseTest):
52667
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1086
50074
024a9897c651 Merged revisions 67511,67536-67537,67543 via svnmerge from
Georg Brandl <georg@python.org>
parents: 49137
diff changeset
1087 def test_warnings(self):
52667
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1088 with warnings.catch_warnings():
52891
7b4ef0b87ddc Blocked revisions 71221 via svnmerge
Brett Cannon <bcannon@gmail.com>
parents: 52667
diff changeset
1089 logging.captureWarnings(True)
52667
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1090 try:
52891
7b4ef0b87ddc Blocked revisions 71221 via svnmerge
Brett Cannon <bcannon@gmail.com>
parents: 52667
diff changeset
1091 warnings.filterwarnings("always", category=UserWarning)
52667
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1092 file = io.StringIO()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1093 h = logging.StreamHandler(file)
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1094 logger = logging.getLogger("py.warnings")
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1095 logger.addHandler(h)
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1096 warnings.warn("I'm warning you...")
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1097 logger.removeHandler(h)
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1098 s = file.getvalue()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1099 h.close()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1100 self.assertTrue(s.find("UserWarning: I'm warning you...\n") > 0)
50074
024a9897c651 Merged revisions 67511,67536-67537,67543 via svnmerge from
Georg Brandl <georg@python.org>
parents: 49137
diff changeset
1101
52667
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1102 #See if an explicit file uses the original implementation
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1103 file = io.StringIO()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1104 warnings.showwarning("Explicit", UserWarning, "dummy.py", 42,
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1105 file, "Dummy line")
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1106 s = file.getvalue()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1107 file.close()
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1108 self.assertEqual(s,
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1109 "dummy.py:42: UserWarning: Explicit\n Dummy line\n")
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1110 finally:
2d95c0141214 Merged revisions 70975 via svnmerge from
Brett Cannon <bcannon@gmail.com>
parents: 51579
diff changeset
1111 logging.captureWarnings(False)
50074
024a9897c651 Merged revisions 67511,67536-67537,67543 via svnmerge from
Georg Brandl <georg@python.org>
parents: 49137
diff changeset
1112
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1113
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1114 def formatFunc(format, datefmt=None):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1115 return logging.Formatter(format, datefmt)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1116
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1117 def handlerFunc():
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1118 return logging.StreamHandler()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1119
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1120 class CustomHandler(logging.StreamHandler):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1121 pass
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1122
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1123 class ConfigDictTest(BaseTest):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1124
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1125 """Reading logging config from a dictionary."""
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1126
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1127 expected_log_pat = r"^([\w]+) \+\+ ([\w]+)$"
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1128
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1129 # config0 is a standard configuration.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1130 config0 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1131 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1132 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1133 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1134 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1135 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1136 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1137 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1138 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1139 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1140 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1141 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1142 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1143 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1144 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1145 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1146 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1147 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1148 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1149 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1150
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1151 # config1 adds a little to the standard configuration.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1152 config1 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1153 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1154 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1155 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1156 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1157 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1158 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1159 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1160 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1161 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1162 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1163 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1164 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1165 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1166 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1167 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1168 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1169 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1170 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1171 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1172 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1173 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1174 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1175 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1176 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1177
68319
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1178 # config1a moves the handler to the root. Used with config8a
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1179 config1a = {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1180 'version': 1,
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1181 'formatters': {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1182 'form1' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1183 'format' : '%(levelname)s ++ %(message)s',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1184 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1185 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1186 'handlers' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1187 'hand1' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1188 'class' : 'logging.StreamHandler',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1189 'formatter' : 'form1',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1190 'level' : 'NOTSET',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1191 'stream' : 'ext://sys.stdout',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1192 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1193 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1194 'loggers' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1195 'compiler.parser' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1196 'level' : 'DEBUG',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1197 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1198 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1199 'root' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1200 'level' : 'WARNING',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1201 'handlers' : ['hand1'],
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1202 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1203 }
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1204
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1205 # config2 has a subtle configuration error that should be reported
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1206 config2 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1207 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1208 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1209 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1210 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1211 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1212 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1213 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1214 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1215 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1216 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1217 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1218 'stream' : 'ext://sys.stdbout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1219 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1220 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1221 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1222 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1223 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1224 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1225 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1226 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1227 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1228 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1229 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1230 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1231
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1232 #As config1 but with a misspelt level on a handler
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1233 config2a = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1234 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1235 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1236 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1237 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1238 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1239 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1240 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1241 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1242 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1243 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1244 'level' : 'NTOSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1245 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1246 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1247 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1248 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1249 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1250 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1251 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1252 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1253 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1254 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1255 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1256 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1257 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1258
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1259
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1260 #As config1 but with a misspelt level on a logger
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1261 config2b = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1262 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1263 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1264 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1265 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1266 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1267 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1268 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1269 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1270 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1271 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1272 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1273 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1274 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1275 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1276 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1277 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1278 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1279 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1280 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1281 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1282 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1283 'level' : 'WRANING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1284 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1285 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1286
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1287 # config3 has a less subtle configuration error
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1288 config3 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1289 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1290 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1291 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1292 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1293 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1294 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1295 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1296 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1297 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1298 'formatter' : 'misspelled_name',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1299 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1300 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1301 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1302 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1303 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1304 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1305 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1306 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1307 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1308 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1309 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1310 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1311 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1312 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1313
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1314 # config4 specifies a custom formatter class to be loaded
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1315 config4 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1316 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1317 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1318 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1319 '()' : __name__ + '.ExceptionFormatter',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1320 'format' : '%(levelname)s:%(name)s:%(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1321 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1322 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1323 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1324 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1325 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1326 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1327 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1328 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1329 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1330 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1331 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1332 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1333 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1334 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1335 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1336
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1337 # As config4 but using an actual callable rather than a string
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1338 config4a = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1339 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1340 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1341 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1342 '()' : ExceptionFormatter,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1343 'format' : '%(levelname)s:%(name)s:%(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1344 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1345 'form2' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1346 '()' : __name__ + '.formatFunc',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1347 'format' : '%(levelname)s:%(name)s:%(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1348 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1349 'form3' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1350 '()' : formatFunc,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1351 'format' : '%(levelname)s:%(name)s:%(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1352 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1353 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1354 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1355 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1356 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1357 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1358 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1359 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1360 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1361 'hand2' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1362 '()' : handlerFunc,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1363 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1364 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1365 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1366 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1367 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1368 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1369 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1370
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1371 # config5 specifies a custom handler class to be loaded
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1372 config5 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1373 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1374 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1375 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1376 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1377 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1378 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1379 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1380 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1381 'class' : __name__ + '.CustomHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1382 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1383 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1384 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1385 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1386 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1387 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1388 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1389 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1390 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1391 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1392 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1393 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1394 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1395 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1396 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1397
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1398 # config6 specifies a custom handler class to be loaded
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1399 # but has bad arguments
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1400 config6 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1401 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1402 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1403 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1404 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1405 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1406 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1407 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1408 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1409 'class' : __name__ + '.CustomHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1410 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1411 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1412 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1413 '9' : 'invalid parameter name',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1414 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1415 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1416 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1417 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1418 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1419 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1420 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1421 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1422 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1423 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1424 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1425 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1426
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1427 #config 7 does not define compiler.parser but defines compiler.lexer
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1428 #so compiler.parser should be disabled after applying it
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1429 config7 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1430 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1431 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1432 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1433 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1434 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1435 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1436 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1437 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1438 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1439 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1440 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1441 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1442 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1443 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1444 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1445 'compiler.lexer' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1446 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1447 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1448 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1449 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1450 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1451 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1452 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1453 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1454
68319
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1455 # config8 defines both compiler and compiler.lexer
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1456 # so compiler.parser should not be disabled (since
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1457 # compiler is defined)
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1458 config8 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1459 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1460 'disable_existing_loggers' : False,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1461 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1462 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1463 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1464 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1465 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1466 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1467 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1468 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1469 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1470 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1471 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1472 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1473 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1474 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1475 'compiler' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1476 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1477 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1478 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1479 'compiler.lexer' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1480 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1481 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1482 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1483 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1484 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1485 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1486
68319
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1487 # config8a disables existing loggers
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1488 config8a = {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1489 'version': 1,
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1490 'disable_existing_loggers' : True,
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1491 'formatters': {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1492 'form1' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1493 'format' : '%(levelname)s ++ %(message)s',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1494 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1495 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1496 'handlers' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1497 'hand1' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1498 'class' : 'logging.StreamHandler',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1499 'formatter' : 'form1',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1500 'level' : 'NOTSET',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1501 'stream' : 'ext://sys.stdout',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1502 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1503 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1504 'loggers' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1505 'compiler' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1506 'level' : 'DEBUG',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1507 'handlers' : ['hand1'],
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1508 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1509 'compiler.lexer' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1510 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1511 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1512 'root' : {
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1513 'level' : 'WARNING',
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1514 },
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1515 }
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1516
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1517 config9 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1518 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1519 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1520 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1521 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1522 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1523 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1524 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1525 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1526 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1527 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1528 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1529 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1530 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1531 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1532 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1533 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1534 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1535 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1536 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1537 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1538 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1539 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1540 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1541 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1542
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1543 config9a = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1544 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1545 'incremental' : True,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1546 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1547 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1548 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1549 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1550 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1551 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1552 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1553 'level' : 'INFO',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1554 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1555 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1556 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1557
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1558 config9b = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1559 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1560 'incremental' : True,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1561 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1562 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1563 'level' : 'INFO',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1564 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1565 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1566 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1567 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1568 'level' : 'INFO',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1569 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1570 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1571 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1572
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1573 #As config1 but with a filter added
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1574 config10 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1575 'version': 1,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1576 'formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1577 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1578 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1579 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1580 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1581 'filters' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1582 'filt1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1583 'name' : 'compiler.parser',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1584 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1585 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1586 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1587 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1588 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1589 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1590 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1591 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1592 'filters' : ['filt1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1593 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1594 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1595 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1596 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1597 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1598 'filters' : ['filt1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1599 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1600 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1601 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1602 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1603 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1604 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1605 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1606
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1607 #As config1 but using cfg:// references
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1608 config11 = {
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1609 'version': 1,
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1610 'true_formatters': {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1611 'form1' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1612 'format' : '%(levelname)s ++ %(message)s',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1613 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1614 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1615 'handler_configs': {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1616 'hand1' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1617 'class' : 'logging.StreamHandler',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1618 'formatter' : 'form1',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1619 'level' : 'NOTSET',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1620 'stream' : 'ext://sys.stdout',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1621 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1622 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1623 'formatters' : 'cfg://true_formatters',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1624 'handlers' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1625 'hand1' : 'cfg://handler_configs[hand1]',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1626 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1627 'loggers' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1628 'compiler.parser' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1629 'level' : 'DEBUG',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1630 'handlers' : ['hand1'],
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1631 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1632 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1633 'root' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1634 'level' : 'WARNING',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1635 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1636 }
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1637
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1638 #As config11 but missing the version key
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1639 config12 = {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1640 'true_formatters': {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1641 'form1' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1642 'format' : '%(levelname)s ++ %(message)s',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1643 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1644 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1645 'handler_configs': {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1646 'hand1' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1647 'class' : 'logging.StreamHandler',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1648 'formatter' : 'form1',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1649 'level' : 'NOTSET',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1650 'stream' : 'ext://sys.stdout',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1651 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1652 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1653 'formatters' : 'cfg://true_formatters',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1654 'handlers' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1655 'hand1' : 'cfg://handler_configs[hand1]',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1656 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1657 'loggers' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1658 'compiler.parser' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1659 'level' : 'DEBUG',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1660 'handlers' : ['hand1'],
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1661 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1662 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1663 'root' : {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1664 'level' : 'WARNING',
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1665 },
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1666 }
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1667
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1668 #As config11 but using an unsupported version
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1669 config13 = {
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1670 'version': 2,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1671 'true_formatters': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1672 'form1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1673 'format' : '%(levelname)s ++ %(message)s',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1674 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1675 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1676 'handler_configs': {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1677 'hand1' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1678 'class' : 'logging.StreamHandler',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1679 'formatter' : 'form1',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1680 'level' : 'NOTSET',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1681 'stream' : 'ext://sys.stdout',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1682 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1683 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1684 'formatters' : 'cfg://true_formatters',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1685 'handlers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1686 'hand1' : 'cfg://handler_configs[hand1]',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1687 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1688 'loggers' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1689 'compiler.parser' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1690 'level' : 'DEBUG',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1691 'handlers' : ['hand1'],
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1692 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1693 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1694 'root' : {
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1695 'level' : 'WARNING',
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1696 },
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1697 }
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1698
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1699 def apply_config(self, conf):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1700 logging.config.dictConfig(conf)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1701
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1702 def test_config0_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1703 # A simple config which overrides the default settings.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1704 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1705 self.apply_config(self.config0)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1706 logger = logging.getLogger()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1707 # Won't output anything
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1708 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1709 # Outputs a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1710 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1711 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1712 ('ERROR', '2'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1713 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1714 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1715 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1716
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1717 def test_config1_ok(self, config=config1):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1718 # A config defining a sub-parser as well.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1719 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1720 self.apply_config(config)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1721 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1722 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1723 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1724 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1725 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1726 ('INFO', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1727 ('ERROR', '2'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1728 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1729 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1730 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1731
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1732 def test_config2_failure(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1733 # A simple config which overrides the default settings.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1734 self.assertRaises(Exception, self.apply_config, self.config2)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1735
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1736 def test_config2a_failure(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1737 # A simple config which overrides the default settings.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1738 self.assertRaises(Exception, self.apply_config, self.config2a)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1739
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1740 def test_config2b_failure(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1741 # A simple config which overrides the default settings.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1742 self.assertRaises(Exception, self.apply_config, self.config2b)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1743
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1744 def test_config3_failure(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1745 # A simple config which overrides the default settings.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1746 self.assertRaises(Exception, self.apply_config, self.config3)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1747
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1748 def test_config4_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1749 # A config specifying a custom formatter class.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1750 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1751 self.apply_config(self.config4)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1752 #logger = logging.getLogger()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1753 try:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1754 raise RuntimeError()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1755 except RuntimeError:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1756 logging.exception("just testing")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1757 sys.stdout.seek(0)
66310
9fe76c26ea9f #9424: Replace deprecated assert* methods in the Python test suite.
Ezio Melotti <ezio.melotti@gmail.com>
parents: 65757
diff changeset
1758 self.assertEqual(output.getvalue(),
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1759 "ERROR:root:just testing\nGot a [RuntimeError]\n")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1760 # Original logger output is empty
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1761 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1762
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1763 def test_config4a_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1764 # A config specifying a custom formatter class.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1765 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1766 self.apply_config(self.config4a)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1767 #logger = logging.getLogger()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1768 try:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1769 raise RuntimeError()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1770 except RuntimeError:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1771 logging.exception("just testing")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1772 sys.stdout.seek(0)
66310
9fe76c26ea9f #9424: Replace deprecated assert* methods in the Python test suite.
Ezio Melotti <ezio.melotti@gmail.com>
parents: 65757
diff changeset
1773 self.assertEqual(output.getvalue(),
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1774 "ERROR:root:just testing\nGot a [RuntimeError]\n")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1775 # Original logger output is empty
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1776 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1777
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1778 def test_config5_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1779 self.test_config1_ok(config=self.config5)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1780
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1781 def test_config6_failure(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1782 self.assertRaises(Exception, self.apply_config, self.config6)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1783
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1784 def test_config7_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1785 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1786 self.apply_config(self.config1)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1787 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1788 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1789 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1790 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1791 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1792 ('INFO', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1793 ('ERROR', '2'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1794 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1795 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1796 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1797 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1798 self.apply_config(self.config7)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1799 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1800 self.assertTrue(logger.disabled)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1801 logger = logging.getLogger("compiler.lexer")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1802 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1803 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1804 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1805 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1806 ('INFO', '3'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1807 ('ERROR', '4'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1808 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1809 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1810 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1811
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1812 #Same as test_config_7_ok but don't disable old loggers.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1813 def test_config_8_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1814 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1815 self.apply_config(self.config1)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1816 logger = logging.getLogger("compiler.parser")
68319
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1817 # All will output a message
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1818 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1819 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1820 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1821 ('INFO', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1822 ('ERROR', '2'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1823 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1824 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1825 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1826 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1827 self.apply_config(self.config8)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1828 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1829 self.assertFalse(logger.disabled)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1830 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1831 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1832 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1833 logger = logging.getLogger("compiler.lexer")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1834 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1835 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1836 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1837 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1838 ('INFO', '3'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1839 ('ERROR', '4'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1840 ('INFO', '5'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1841 ('ERROR', '6'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1842 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1843 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1844 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1845
68319
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1846 def test_config_8a_ok(self):
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1847 with captured_stdout() as output:
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1848 self.apply_config(self.config1a)
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1849 logger = logging.getLogger("compiler.parser")
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1850 # See issue #11424. compiler-hyphenated sorts
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1851 # between compiler and compiler.xyz and this
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1852 # was preventing compiler.xyz from being included
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1853 # in the child loggers of compiler because of an
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1854 # overzealous loop termination condition.
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1855 hyphenated = logging.getLogger('compiler-hyphenated')
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1856 # All will output a message
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1857 logger.info(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1858 logger.error(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1859 hyphenated.critical(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1860 self.assert_log_lines([
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1861 ('INFO', '1'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1862 ('ERROR', '2'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1863 ('CRITICAL', '3'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1864 ], stream=output)
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1865 # Original logger output is empty.
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1866 self.assert_log_lines([])
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1867 with captured_stdout() as output:
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1868 self.apply_config(self.config8a)
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1869 logger = logging.getLogger("compiler.parser")
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1870 self.assertFalse(logger.disabled)
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1871 # Both will output a message
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1872 logger.info(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1873 logger.error(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1874 logger = logging.getLogger("compiler.lexer")
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1875 # Both will output a message
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1876 logger.info(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1877 logger.error(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1878 # Will not appear
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1879 hyphenated.critical(self.next_message())
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1880 self.assert_log_lines([
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1881 ('INFO', '4'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1882 ('ERROR', '5'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1883 ('INFO', '6'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1884 ('ERROR', '7'),
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1885 ], stream=output)
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1886 # Original logger output is empty.
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1887 self.assert_log_lines([])
27bf21522742 #Issue 11424: added equivalent fixes for dictConfig.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68318
diff changeset
1888
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1889 def test_config_9_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1890 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1891 self.apply_config(self.config9)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1892 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1893 #Nothing will be output since both handler and logger are set to WARNING
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1894 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1895 self.assert_log_lines([], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1896 self.apply_config(self.config9a)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1897 #Nothing will be output since both handler is still set to WARNING
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1898 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1899 self.assert_log_lines([], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1900 self.apply_config(self.config9b)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1901 #Message should now be output
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1902 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1903 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1904 ('INFO', '3'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1905 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1906
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1907 def test_config_10_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1908 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1909 self.apply_config(self.config10)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1910 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1911 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1912 logger = logging.getLogger('compiler')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1913 #Not output, because filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1914 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1915 logger = logging.getLogger('compiler.lexer')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1916 #Not output, because filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1917 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1918 logger = logging.getLogger("compiler.parser.codegen")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1919 #Output, as not filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1920 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1921 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1922 ('WARNING', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1923 ('ERROR', '4'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1924 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1925
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1926 def test_config11_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1927 self.test_config1_ok(self.config11)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1928
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1929 def test_config12_failure(self):
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1930 self.assertRaises(Exception, self.apply_config, self.config12)
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1931
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1932 def test_config13_failure(self):
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1933 self.assertRaises(Exception, self.apply_config, self.config13)
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1934
61073
493bb4585e38 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
Victor Stinner <victor.stinner@haypocalc.com>
parents: 60506
diff changeset
1935 @unittest.skipUnless(threading, 'listen() needs threading to work')
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1936 def setup_via_listener(self, text):
59600
9696932ad827 Merged revisions 77967,77969,77973,77979,77985-77986,78009,78029,78031-78033,78081,78085,78103,78105-78106,78108,78246,78703,78728,78731,78853,78855 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59522
diff changeset
1937 text = text.encode("utf-8")
64051
b09f93fe29fb Replace the deprecated ConfigParser.readfp() method, and fix the incomplete merge in r82293.
Florent Xicluna <florent.xicluna@gmail.com>
parents: 62561
diff changeset
1938 # Ask for a randomly assigned port (by using port 0)
b09f93fe29fb Replace the deprecated ConfigParser.readfp() method, and fix the incomplete merge in r82293.
Florent Xicluna <florent.xicluna@gmail.com>
parents: 62561
diff changeset
1939 t = logging.config.listen(0)
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1940 t.start()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1941 t.ready.wait()
62561
358d86a572fb Merged revisions 80712,81651 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 61073
diff changeset
1942 # Now get the port allocated
358d86a572fb Merged revisions 80712,81651 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 61073
diff changeset
1943 port = t.port
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1944 t.ready.clear()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1945 try:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1946 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1947 sock.settimeout(2.0)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1948 sock.connect(('localhost', port))
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1949
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1950 slen = struct.pack('>L', len(text))
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1951 s = slen + text
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1952 sentsofar = 0
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1953 left = len(s)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1954 while left > 0:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1955 sent = sock.send(s[sentsofar:])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1956 sentsofar += sent
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1957 left -= sent
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1958 sock.close()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1959 finally:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1960 t.ready.wait(2.0)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1961 logging.config.stopListening()
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1962 t.join(2.0)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1963
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1964 def test_listen_config_10_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1965 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1966 self.setup_via_listener(json.dumps(self.config10))
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1967 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1968 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1969 logger = logging.getLogger('compiler')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1970 #Not output, because filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1971 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1972 logger = logging.getLogger('compiler.lexer')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1973 #Not output, because filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1974 logger.warning(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1975 logger = logging.getLogger("compiler.parser.codegen")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1976 #Output, as not filtered
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1977 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1978 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1979 ('WARNING', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1980 ('ERROR', '4'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1981 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1982
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1983 def test_listen_config_1_ok(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1984 with captured_stdout() as output:
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1985 self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1))
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1986 logger = logging.getLogger("compiler.parser")
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1987 # Both will output a message
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1988 logger.info(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1989 logger.error(self.next_message())
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1990 self.assert_log_lines([
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1991 ('INFO', '1'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1992 ('ERROR', '2'),
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1993 ], stream=output)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1994 # Original logger output is empty.
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1995 self.assert_log_lines([])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1996
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1997
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1998 class ManagerTest(BaseTest):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
1999 def test_manager_loggerclass(self):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2000 logged = []
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2001
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2002 class MyLogger(logging.Logger):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2003 def _log(self, level, msg, args, exc_info=None, extra=None):
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2004 logged.append(msg)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2005
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2006 man = logging.Manager(None)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2007 self.assertRaises(TypeError, man.setLoggerClass, int)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2008 man.setLoggerClass(MyLogger)
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2009 logger = man.getLogger('test')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2010 logger.warning('should appear in logged')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2011 logging.warning('should not appear in logged')
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2012
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2013 self.assertEqual(logged, ['should appear in logged'])
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2014
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2015
60506
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2016 class ChildLoggerTest(BaseTest):
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2017 def test_child_loggers(self):
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2018 r = logging.getLogger()
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2019 l1 = logging.getLogger('abc')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2020 l2 = logging.getLogger('def.ghi')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2021 c1 = r.getChild('xyz')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2022 c2 = r.getChild('uvw.xyz')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2023 self.assertTrue(c1 is logging.getLogger('xyz'))
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2024 self.assertTrue(c2 is logging.getLogger('uvw.xyz'))
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2025 c1 = l1.getChild('def')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2026 c2 = c1.getChild('ghi')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2027 c3 = l1.getChild('def.ghi')
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2028 self.assertTrue(c1 is logging.getLogger('abc.def'))
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2029 self.assertTrue(c2 is logging.getLogger('abc.def.ghi'))
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2030 self.assertTrue(c2 is c3)
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2031
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2032
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2033 class DerivedLogRecord(logging.LogRecord):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2034 pass
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2035
66638
81f4d1fdf573 logging: Added getLogRecordFactory/setLogRecordFactory with docs and tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66310
diff changeset
2036 class LogRecordFactoryTest(BaseTest):
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2037
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2038 def setUp(self):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2039 class CheckingFilter(logging.Filter):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2040 def __init__(self, cls):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2041 self.cls = cls
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2042
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2043 def filter(self, record):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2044 t = type(record)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2045 if t is not self.cls:
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2046 msg = 'Unexpected LogRecord type %s, expected %s' % (t,
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2047 self.cls)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2048 raise TypeError(msg)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2049 return True
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2050
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2051 BaseTest.setUp(self)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2052 self.filter = CheckingFilter(DerivedLogRecord)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2053 self.root_logger.addFilter(self.filter)
66638
81f4d1fdf573 logging: Added getLogRecordFactory/setLogRecordFactory with docs and tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66310
diff changeset
2054 self.orig_factory = logging.getLogRecordFactory()
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2055
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2056 def tearDown(self):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2057 self.root_logger.removeFilter(self.filter)
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2058 BaseTest.tearDown(self)
66638
81f4d1fdf573 logging: Added getLogRecordFactory/setLogRecordFactory with docs and tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66310
diff changeset
2059 logging.setLogRecordFactory(self.orig_factory)
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2060
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2061 def test_logrecord_class(self):
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2062 self.assertRaises(TypeError, self.root_logger.warning,
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2063 self.next_message())
66638
81f4d1fdf573 logging: Added getLogRecordFactory/setLogRecordFactory with docs and tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66310
diff changeset
2064 logging.setLogRecordFactory(DerivedLogRecord)
65546
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2065 self.root_logger.error(self.next_message())
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2066 self.assert_log_lines([
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2067 ('root', 'ERROR', '2'),
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2068 ])
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2069
c47ef180be39 logging: Added tests for _logRecordClass changes.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64866
diff changeset
2070
64730
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2071 class QueueHandlerTest(BaseTest):
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2072 # Do not bother with a logger name group.
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2073 expected_log_pat = r"^[\w.]+ -> ([\w]+): ([\d]+)$"
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2074
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2075 def setUp(self):
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2076 BaseTest.setUp(self)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2077 self.queue = queue.Queue(-1)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2078 self.que_hdlr = logging.handlers.QueueHandler(self.queue)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2079 self.que_logger = logging.getLogger('que')
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2080 self.que_logger.propagate = False
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2081 self.que_logger.setLevel(logging.WARNING)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2082 self.que_logger.addHandler(self.que_hdlr)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2083
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2084 def tearDown(self):
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2085 self.que_hdlr.close()
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2086 BaseTest.tearDown(self)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2087
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2088 def test_queue_handler(self):
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2089 self.que_logger.debug(self.next_message())
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2090 self.assertRaises(queue.Empty, self.queue.get_nowait)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2091 self.que_logger.info(self.next_message())
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2092 self.assertRaises(queue.Empty, self.queue.get_nowait)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2093 msg = self.next_message()
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2094 self.que_logger.warning(msg)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2095 data = self.queue.get_nowait()
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2096 self.assertTrue(isinstance(data, logging.LogRecord))
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2097 self.assertEqual(data.name, self.que_logger.name)
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2098 self.assertEqual((data.msg, data.args), (msg, None))
69ed5ecb5026 Added test for QueueHandler.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64051
diff changeset
2099
69781
728e573d7816 logging: don't define QueueListener if Python has no thread support
Victor Stinner <victor.stinner@haypocalc.com>
parents: 69382
diff changeset
2100 @unittest.skipUnless(hasattr(logging.handlers, 'QueueListener'),
728e573d7816 logging: don't define QueueListener if Python has no thread support
Victor Stinner <victor.stinner@haypocalc.com>
parents: 69382
diff changeset
2101 'logging.handlers.QueueListener required for this test')
69382
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2102 def test_queue_listener(self):
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2103 handler = TestHandler(Matcher())
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2104 listener = logging.handlers.QueueListener(self.queue, handler)
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2105 listener.start()
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2106 try:
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2107 self.que_logger.warning(self.next_message())
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2108 self.que_logger.error(self.next_message())
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2109 self.que_logger.critical(self.next_message())
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2110 finally:
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2111 listener.stop()
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2112 self.assertTrue(handler.matches(levelno=logging.WARNING, message='1'))
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2113 self.assertTrue(handler.matches(levelno=logging.ERROR, message='2'))
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2114 self.assertTrue(handler.matches(levelno=logging.CRITICAL, message='3'))
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2115
3b700e6704b3 Issue #11852: Add missing imports and update tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68319
diff changeset
2116
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2117 class FormatterTest(unittest.TestCase):
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2118 def setUp(self):
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2119 self.common = {
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2120 'name': 'formatter.test',
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2121 'level': logging.DEBUG,
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2122 'pathname': os.path.join('path', 'to', 'dummy.ext'),
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2123 'lineno': 42,
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2124 'exc_info': None,
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2125 'func': None,
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2126 'msg': 'Message with %d %s',
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2127 'args': (2, 'placeholders'),
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2128 }
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2129 self.variants = {
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2130 }
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2131
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2132 def get_record(self, name=None):
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2133 result = dict(self.common)
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2134 if name is not None:
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2135 result.update(self.variants[name])
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2136 return logging.makeLogRecord(result)
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2137
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2138 def test_percent(self):
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2139 # Test %-formatting
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2140 r = self.get_record()
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2141 f = logging.Formatter('${%(message)s}')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2142 self.assertEqual(f.format(r), '${Message with 2 placeholders}')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2143 f = logging.Formatter('%(random)s')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2144 self.assertRaises(KeyError, f.format, r)
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2145 self.assertFalse(f.usesTime())
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2146 f = logging.Formatter('%(asctime)s')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2147 self.assertTrue(f.usesTime())
68042
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2148 f = logging.Formatter('%(asctime)-15s')
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2149 self.assertTrue(f.usesTime())
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2150 f = logging.Formatter('asctime')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2151 self.assertFalse(f.usesTime())
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2152
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2153 def test_braces(self):
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2154 # Test {}-formatting
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2155 r = self.get_record()
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2156 f = logging.Formatter('$%{message}%$', style='{')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2157 self.assertEqual(f.format(r), '$%Message with 2 placeholders%$')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2158 f = logging.Formatter('{random}', style='{')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2159 self.assertRaises(KeyError, f.format, r)
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2160 self.assertFalse(f.usesTime())
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2161 f = logging.Formatter('{asctime}', style='{')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2162 self.assertTrue(f.usesTime())
68042
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2163 f = logging.Formatter('{asctime!s:15}', style='{')
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2164 self.assertTrue(f.usesTime())
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2165 f = logging.Formatter('{asctime:15}', style='{')
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2166 self.assertTrue(f.usesTime())
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2167 f = logging.Formatter('asctime', style='{')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2168 self.assertFalse(f.usesTime())
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2169
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2170 def test_dollars(self):
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2171 # Test $-formatting
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2172 r = self.get_record()
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2173 f = logging.Formatter('$message', style='$')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2174 self.assertEqual(f.format(r), 'Message with 2 placeholders')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2175 f = logging.Formatter('$$%${message}%$$', style='$')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2176 self.assertEqual(f.format(r), '$%Message with 2 placeholders%$')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2177 f = logging.Formatter('${random}', style='$')
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2178 self.assertRaises(KeyError, f.format, r)
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2179 self.assertFalse(f.usesTime())
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2180 f = logging.Formatter('${asctime}', style='$')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2181 self.assertTrue(f.usesTime())
68042
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2182 f = logging.Formatter('${asctime', style='$')
979da8f139dd Issue #11330: Updated tests for correct asctime handling.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 68041
diff changeset
2183 self.assertFalse(f.usesTime())
65647
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2184 f = logging.Formatter('$asctime', style='$')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2185 self.assertTrue(f.usesTime())
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2186 f = logging.Formatter('asctime', style='$')
841892e271f7 logging: Improved Formatter implementation.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65634
diff changeset
2187 self.assertFalse(f.usesTime())
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2188
66819
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2189 class LastResortTest(BaseTest):
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2190 def test_last_resort(self):
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2191 # Test the last resort handler
66819
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2192 root = self.root_logger
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2193 root.removeHandler(self.root_hdlr)
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2194 old_stderr = sys.stderr
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2195 old_lastresort = logging.lastResort
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2196 old_raise_exceptions = logging.raiseExceptions
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2197 try:
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2198 sys.stderr = sio = io.StringIO()
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2199 root.warning('This is your final chance!')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2200 self.assertEqual(sio.getvalue(), 'This is your final chance!\n')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2201 #No handlers and no last resort, so 'No handlers' message
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2202 logging.lastResort = None
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2203 sys.stderr = sio = io.StringIO()
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2204 root.warning('This is your final chance!')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2205 self.assertEqual(sio.getvalue(), 'No handlers could be found for logger "root"\n')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2206 # 'No handlers' message only printed once
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2207 sys.stderr = sio = io.StringIO()
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2208 root.warning('This is your final chance!')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2209 self.assertEqual(sio.getvalue(), '')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2210 root.manager.emittedNoHandlerWarning = False
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2211 #If raiseExceptions is False, no message is printed
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2212 logging.raiseExceptions = False
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2213 sys.stderr = sio = io.StringIO()
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2214 root.warning('This is your final chance!')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2215 self.assertEqual(sio.getvalue(), '')
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2216 finally:
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2217 sys.stderr = old_stderr
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2218 root.addHandler(self.root_hdlr)
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2219 logging.lastResort = old_lastresort
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2220 logging.raiseExceptions = old_raise_exceptions
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2221
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2222
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2223 class BaseFileTest(BaseTest):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2224 "Base class for handler tests that write log files"
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2225
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2226 def setUp(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2227 BaseTest.setUp(self)
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2228 fd, self.fn = tempfile.mkstemp(".log", "test_logging-2-")
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2229 os.close(fd)
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2230 self.rmfiles = []
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2231
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2232 def tearDown(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2233 for fn in self.rmfiles:
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2234 os.unlink(fn)
67156
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2235 if os.path.exists(self.fn):
664705dbfe62 Issue #10774: test_logging now removes temp files created during tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66819
diff changeset
2236 os.unlink(self.fn)
64804
d060474e0e24 Added missing BaseTest.tearDown(self). Fixed refleak.
Hirokazu Yamamoto <ocean-city@m2.ccsnet.ne.jp>
parents: 64797
diff changeset
2237 BaseTest.tearDown(self)
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2238
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2239 def assertLogFile(self, filename):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2240 "Assert a log file is there and register it for deletion"
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2241 self.assertTrue(os.path.exists(filename),
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2242 msg="Log file %r does not exist")
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2243 self.rmfiles.append(filename)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2244
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2245
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2246 class RotatingFileHandlerTest(BaseFileTest):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2247 def next_rec(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2248 return logging.LogRecord('n', logging.DEBUG, 'p', 1,
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2249 self.next_message(), None, None, None)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2250
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2251 def test_should_not_rollover(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2252 # If maxbytes is zero rollover never occurs
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2253 rh = logging.handlers.RotatingFileHandler(self.fn, maxBytes=0)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2254 self.assertFalse(rh.shouldRollover(None))
65757
3227b6f204cc Remove ResourceWarnings caused by files left open.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65647
diff changeset
2255 rh.close()
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2256
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2257 def test_should_rollover(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2258 rh = logging.handlers.RotatingFileHandler(self.fn, maxBytes=1)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2259 self.assertTrue(rh.shouldRollover(self.next_rec()))
65757
3227b6f204cc Remove ResourceWarnings caused by files left open.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65647
diff changeset
2260 rh.close()
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2261
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2262 def test_file_created(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2263 # checks that the file is created and assumes it was created
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2264 # by us
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2265 rh = logging.handlers.RotatingFileHandler(self.fn)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2266 rh.emit(self.next_rec())
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2267 self.assertLogFile(self.fn)
65757
3227b6f204cc Remove ResourceWarnings caused by files left open.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65647
diff changeset
2268 rh.close()
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2269
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2270 def test_rollover_filenames(self):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2271 rh = logging.handlers.RotatingFileHandler(
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2272 self.fn, backupCount=2, maxBytes=1)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2273 rh.emit(self.next_rec())
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2274 self.assertLogFile(self.fn)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2275 rh.emit(self.next_rec())
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2276 self.assertLogFile(self.fn + ".1")
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2277 rh.emit(self.next_rec())
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2278 self.assertLogFile(self.fn + ".2")
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2279 self.assertFalse(os.path.exists(self.fn + ".3"))
65757
3227b6f204cc Remove ResourceWarnings caused by files left open.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65647
diff changeset
2280 rh.close()
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2281
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2282 class TimedRotatingFileHandlerTest(BaseFileTest):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2283 # test methods added below
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2284 pass
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2285
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2286 def secs(**kw):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2287 return datetime.timedelta(**kw) // datetime.timedelta(seconds=1)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2288
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2289 for when, exp in (('S', 1),
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2290 ('M', 60),
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2291 ('H', 60 * 60),
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2292 ('D', 60 * 60 * 24),
68041
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2293 ('MIDNIGHT', 60 * 60 * 24),
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2294 # current time (epoch start) is a Thursday, W0 means Monday
68041
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2295 ('W0', secs(days=4, hours=24)),
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2296 ):
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2297 def test_compute_rollover(self, when=when, exp=exp):
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2298 rh = logging.handlers.TimedRotatingFileHandler(
68041
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2299 self.fn, when=when, interval=1, backupCount=0, utc=True)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2300 currentTime = 0.0
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2301 actual = rh.computeRollover(currentTime)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2302 if exp != actual:
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2303 # Failures occur on some systems for MIDNIGHT and W0.
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2304 # Print detailed calculation for MIDNIGHT so we can try to see
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2305 # what's going on
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2306 if when == 'MIDNIGHT':
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2307 try:
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2308 if rh.utc:
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2309 t = time.gmtime(currentTime)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2310 else:
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2311 t = time.localtime(currentTime)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2312 currentHour = t[3]
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2313 currentMinute = t[4]
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2314 currentSecond = t[5]
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2315 # r is the number of seconds left between now and midnight
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2316 r = logging.handlers._MIDNIGHT - ((currentHour * 60 +
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2317 currentMinute) * 60 +
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2318 currentSecond)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2319 result = currentTime + r
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2320 print('t: %s (%s)' % (t, rh.utc), file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2321 print('currentHour: %s' % currentHour, file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2322 print('currentMinute: %s' % currentMinute, file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2323 print('currentSecond: %s' % currentSecond, file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2324 print('r: %s' % r, file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2325 print('result: %s' % result, file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2326 except Exception:
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2327 print('exception in diagnostic code: %s' % sys.exc_info()[1], file=sys.stderr)
374f0b22e4a4 Issue #9941: Fixed TimedRotatingHandler test issues.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 67231
diff changeset
2328 self.assertEqual(exp, actual)
65757
3227b6f204cc Remove ResourceWarnings caused by files left open.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65647
diff changeset
2329 rh.close()
64794
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2330 setattr(TimedRotatingFileHandlerTest, "test_compute_rollover_%s" % when, test_compute_rollover)
dc422daa5dad Issue #9441: logging: Improved test coverage for rotating file handlers.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64730
diff changeset
2331
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2332 class HandlerTest(BaseTest):
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2333
77254
a0023e779bce Added test skip under Windows, as not applicable there.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76728
diff changeset
2334 @unittest.skipIf(os.name == 'nt', 'WatchedFileHandler not appropriate for Windows.')
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2335 @unittest.skipUnless(threading, 'Threading required for this test.')
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2336 def test_race(self):
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2337 # Issue #14632 refers.
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2338 def remove_loop(fname, tries):
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2339 for _ in range(tries):
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2340 try:
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2341 os.unlink(fname)
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2342 except OSError:
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2343 pass
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2344 time.sleep(0.004 * random.randint(0, 4))
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2345
76551
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2346 del_count = 500
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2347 log_count = 500
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2348
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2349 for delay in (False, True):
76551
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2350 fd, fn = tempfile.mkstemp('.log', 'test_logging-3-')
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2351 os.close(fd)
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2352 remover = threading.Thread(target=remove_loop, args=(fn, del_count))
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2353 remover.daemon = True
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2354 remover.start()
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2355 h = logging.handlers.WatchedFileHandler(fn, delay=delay)
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2356 f = logging.Formatter('%(asctime)s: %(levelname)s: %(message)s')
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2357 h.setFormatter(f)
76551
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2358 try:
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2359 for _ in range(log_count):
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2360 time.sleep(0.005)
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2361 r = logging.makeLogRecord({'msg': 'testing' })
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2362 h.handle(r)
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2363 finally:
76728
c334e90160b9 Changed order of cleanup operations to be more sensible.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76551
diff changeset
2364 remover.join()
76551
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2365 h.close()
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2366 if os.path.exists(fn):
59bc2d9497b0 Fixed test to work on Windows.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 76544
diff changeset
2367 os.unlink(fn)
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2368
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2369
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2370 # Set the locale to the platform-dependent default. I have no idea
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2371 # why the test does this, but in any case we save the current locale
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2372 # first and restore it at the end.
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2373 @run_with_locale('LC_ALL', '')
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2374 def test_main():
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2375 run_unittest(BuiltinLevelsTest, BasicFilterTest,
59142
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2376 CustomLevelsAndFiltersTest, MemoryHandlerTest,
e1bc0022b23b Merged revisions 77967,77969,78033,78055,78081,78085,78108 via svnmerge from
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 58218
diff changeset
2377 ConfigFileTest, SocketHandlerTest, MemoryTest,
60506
66ad267a73bf Merged revisions 79279,79284,79293,79373,79376,79379,79876,79888 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents: 59600
diff changeset
2378 EncodingTest, WarningsTest, ConfigDictTest, ManagerTest,
65634
3a9c3ec5e9d2 logging: Added style option to Formatter to allow %, {} or himBHformatting.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 65547
diff changeset
2379 FormatterTest,
66638
81f4d1fdf573 logging: Added getLogRecordFactory/setLogRecordFactory with docs and tests.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66310
diff changeset
2380 LogRecordFactoryTest, ChildLoggerTest, QueueHandlerTest,
64797
cd2ef7528736 Temporarily commented out test which succeeds locally but fails on buildbots, while investigating.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64794
diff changeset
2381 RotatingFileHandlerTest,
66819
c86dc2bd3ae8 logging: added handler of last resort.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 66638
diff changeset
2382 LastResortTest,
76544
5de7c3d64f2a Issue #14632: Updated WatchedFileHandler to deal with race condition. Thanks to John Mulligan for the problem report and patch.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 73419
diff changeset
2383 TimedRotatingFileHandlerTest, HandlerTest,
64797
cd2ef7528736 Temporarily commented out test which succeeds locally but fails on buildbots, while investigating.
Vinay Sajip <vinay_sajip@yahoo.co.uk>
parents: 64794
diff changeset
2384 )
45377
1872bd6cf4b4 Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60873 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43014
diff changeset
2385
45635
882eba145119 Merged revisions 61189-61190,61192,61194-61195,61198-61199 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 45460
diff changeset
2386 if __name__ == "__main__":
27024
1098ccc84d63 SF #660795
Neal Norwitz <nnorwitz@gmail.com>
parents:
diff changeset
2387 test_main()