]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Issue #19424: Fix test_warnings for locale encoding unable to encode
authorVictor Stinner <victor.stinner@gmail.com>
Tue, 29 Oct 2013 22:58:05 +0000 (23:58 +0100)
committerVictor Stinner <victor.stinner@gmail.com>
Tue, 29 Oct 2013 22:58:05 +0000 (23:58 +0100)
"\xe9\u20ac" characters

Lib/test/test_warnings.py

index 52bbaf9a55ef8361fb22d1c67da0419d8d409d5e..13c7df1cb2c505d10d846113b8e5cfabac00f474 100644 (file)
@@ -336,12 +336,13 @@ class WarnTests(BaseTest):
                 module=self.module) as w:
             self.module.resetwarnings()
             self.module.filterwarnings("always", category=UserWarning)
-
-            self.module.warn_explicit("text", UserWarning, "nonascii\xe9\u20ac", 1)
-            self.assertEqual(w[-1].filename, "nonascii\xe9\u20ac")
-
-            self.module.warn_explicit("text", UserWarning, "surrogate\udc80", 1)
-            self.assertEqual(w[-1].filename, "surrogate\udc80")
+            for filename in ("nonascii\xe9\u20ac", "surrogate\udc80"):
+                try:
+                    os.fsencode(filename)
+                except UnicodeEncodeError:
+                    continue
+                self.module.warn_explicit("text", UserWarning, filename, 1)
+                self.assertEqual(w[-1].filename, filename)
 
     def test_warn_explicit_type_errors(self):
         # warn_explicit() should error out gracefully if it is given objects