From c0e07a3ea00ee94618fc51072aeda27f7d7c3d25 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 29 Oct 2013 23:58:05 +0100 Subject: [PATCH] Issue #19424: Fix test_warnings for locale encoding unable to encode "\xe9\u20ac" characters --- Lib/test/test_warnings.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/Lib/test/test_warnings.py b/Lib/test/test_warnings.py index 52bbaf9a55e..13c7df1cb2c 100644 --- a/Lib/test/test_warnings.py +++ b/Lib/test/test_warnings.py @@ -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