[Python-checkins] python/dist/src/Lib/test test__locale.py,1.7,1.8

bcannon at users.sourceforge.net bcannon at users.sourceforge.net
Wed Sep 8 04:02:50 CEST 2004


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5361/Lib/test

Modified Files:
	test__locale.py 
Log Message:
Remove usage of locale.getlocale in favor or setlocale(LC_NUMERIC, None) .
Also added a comment about why the code is bother to see what setlocale thinks
the set locale is.

Closes bug #1023798.


Index: test__locale.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test__locale.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- test__locale.py	6 Sep 2004 23:30:26 -0000	1.7
+++ test__locale.py	8 Sep 2004 02:02:41 -0000	1.8
@@ -1,7 +1,6 @@
 from test.test_support import verbose, TestSkipped, run_unittest
 from _locale import (setlocale, LC_NUMERIC, RADIXCHAR, THOUSEP, nl_langinfo,
                     localeconv, Error)
-from locale import getlocale
 import unittest
 
 candidate_locales = ['es_UY', 'fr_FR', 'fi_FI', 'es_CO', 'pt_PT', 'it_IT',
@@ -33,11 +32,18 @@
                             (THOUSEP, "thousands_sep")):
                 nl_radixchar = nl_langinfo(li)
                 li_radixchar = localeconv()[lc]
+                # Both with seeing what the locale is set to in order to detect
+                # when setlocale lies and says it accepted the locale setting
+                # but in actuality didn't use it (as seen in OS X 10.3)
+                try:
+                    set_locale = setlocale(LC_NUMERIC)
+                except Error:
+                    set_locale = "<not able to determine>"
                 self.assertEquals(nl_radixchar, li_radixchar,
-                                    "%r != %r (%s); "
+                                    "%s != %s (%s); "
                                     "supposed to be %s, set to %s" %
                                         (nl_radixchar, li_radixchar, lc,
-                                         loc, getlocale(LC_NUMERIC)[0]))
+                                         loc, set_locale))
 
 def test_main():
     run_unittest(_LocaleTests)



More information about the Python-checkins mailing list