diff Lib/test/test_httpservers.py @ 65492:b2a9ca2b61a2

test_httpservers: Fix skip test check, the python executable path have to be encodable to utf-8, not to the file1 encoding.
author Victor Stinner <victor.stinner@haypocalc.com>
date Sun, 17 Oct 2010 20:13:36 +0000
parents b0228af6db11
children c147f910af70
line wrap: on
line diff
--- a/Lib/test/test_httpservers.py	Sun Oct 17 20:13:05 2010 +0000
+++ b/Lib/test/test_httpservers.py	Sun Oct 17 20:13:36 2010 +0000
@@ -310,15 +310,18 @@
         else:
             self.pythonexe = sys.executable
 
+        try:
+            # The python executable path is written as the first line of the
+            # CGI Python script. The encoding cookie cannot be used, and so the
+            # path should be encodable to the default script encoding (utf-8)
+            self.pythonexe.encode('utf-8')
+        except UnicodeEncodeError:
+            self.tearDown()
+            raise self.skipTest(
+                "Python executable path is not encodable to utf-8")
+
         self.file1_path = os.path.join(self.cgi_dir, 'file1.py')
         with open(self.file1_path, 'w') as file1:
-            try:
-                self.pythonexe.encode(file1.encoding)
-            except UnicodeEncodeError:
-                self.tearDown()
-                raise self.skipTest(
-                    "Python executable path is not encodable to %s"
-                    % file1.encoding)
             file1.write(cgi_file1 % self.pythonexe)
         os.chmod(self.file1_path, 0o777)