From: Victor Stinner Date: Wed, 31 Mar 2021 11:01:46 +0000 (+0200) Subject: bpo-37945: Fix test_locale.test_getsetlocale_issue1813() (#25110) X-Git-Tag: v3.10.0a7~44 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f3ab670fea75ebe177e3412a5ebe39263cd428e3;p=thirdparty%2FPython%2Fcpython.git bpo-37945: Fix test_locale.test_getsetlocale_issue1813() (#25110) Skip the test if setlocale() fails. --- diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py index bd08c4f3007f..4bb4c5541d07 100644 --- a/Lib/test/test_locale.py +++ b/Lib/test/test_locale.py @@ -564,7 +564,13 @@ class TestMiscellaneous(unittest.TestCase): loc = locale.getlocale(locale.LC_CTYPE) if verbose: print('testing with %a' % (loc,), end=' ', flush=True) - locale.setlocale(locale.LC_CTYPE, loc) + try: + locale.setlocale(locale.LC_CTYPE, loc) + except locale.Error as exc: + # bpo-37945: setlocale(LC_CTYPE) fails with getlocale(LC_CTYPE) + # and the tr_TR locale on Windows. getlocale() builds a locale + # which is not recognize by setlocale(). + self.skipTest(f"setlocale(LC_CTYPE, {loc!r}) failed: {exc!r}") self.assertEqual(loc, locale.getlocale(locale.LC_CTYPE)) def test_invalid_locale_format_in_localetuple(self): diff --git a/Misc/NEWS.d/next/Tests/2021-03-31-11-38-42.bpo-37945.HTUYhv.rst b/Misc/NEWS.d/next/Tests/2021-03-31-11-38-42.bpo-37945.HTUYhv.rst new file mode 100644 index 000000000000..e1c95f63bf7c --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2021-03-31-11-38-42.bpo-37945.HTUYhv.rst @@ -0,0 +1,2 @@ +Fix test_getsetlocale_issue1813() of test_locale: skip the test if +``setlocale()`` fails. Patch by Victor Stinner.