Restore the locale to "C" on exit.

If this doesn't happen, it leaves the locale in a state that can cause
other tests to fail.  For example, running test_strptime,
test_logging, and test_time in that order.
This commit is contained in:
Jeremy Hylton 2003-07-18 03:19:20 +00:00
parent 95be8bdab7
commit 096d986f3b
1 changed files with 5 additions and 2 deletions

View File

@ -30,11 +30,11 @@ import socket, threading, time, locale
import logging, logging.handlers, logging.config
try:
locale.setlocale(locale.LC_ALL, '')
cur_locale = locale.setlocale(locale.LC_ALL, '')
except (ValueError, locale.Error):
# this happens on a Solaris box which only supports "C" locale
# or a Mac OS X box which supports very little locale stuff at all
pass
cur_locale = None
BANNER = "-- %-10s %-6s ---------------------------------------------------\n"
@ -474,6 +474,9 @@ def test_main():
banner("logrecv output", "end")
sys.stdout.flush()
if cur_locale:
locale.setlocale(locale.LC_ALL, "C")
if __name__ == "__main__":
sys.stdout.write("test_logging\n")
test_main()