Fix my test introduced in test_sys by r79394:
Restore the orginal filesystem encoding before testing
assertRaises(LookupError, sys.setfilesystemencoding, "xxx"). Unittest formats
the exception, but the formatting failed because the file system was invalid
(set to iso-8859-1 by the previous test).
Anyway, ensure to restore the original filesystem encoding when exiting
test_setfilesystemencoding() to avoid error propagation to the other tests.
diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py
index 23ec399..1b21f50 100644
--- a/Lib/test/test_sys.py
+++ b/Lib/test/test_sys.py
@@ -797,10 +797,15 @@
def test_setfilesystemencoding(self):
old = sys.getfilesystemencoding()
- sys.setfilesystemencoding("iso-8859-1")
- self.assertEqual(sys.getfilesystemencoding(), "iso-8859-1")
- self.assertRaises(LookupError, sys.setfilesystemencoding, "xxx")
- sys.setfilesystemencoding(old)
+ try:
+ sys.setfilesystemencoding("iso-8859-1")
+ self.assertEqual(sys.getfilesystemencoding(), "iso-8859-1")
+ finally:
+ sys.setfilesystemencoding(old)
+ try:
+ self.assertRaises(LookupError, sys.setfilesystemencoding, "xxx")
+ finally:
+ sys.setfilesystemencoding(old)
def test_main():
test.support.run_unittest(SysModuleTest, SizeofTest)