changeset: 92136:b05d4f3ee190 branch: 3.4 parent: 92134:873002eb8087 user: Serhiy Storchaka date: Sun Aug 17 16:57:39 2014 +0300 files: Lib/test/test_httpservers.py description: Issue #22165: Fixed test_undecodable_filename on Mac OS. diff -r 873002eb8087 -r b05d4f3ee190 Lib/test/test_httpservers.py --- a/Lib/test/test_httpservers.py Sun Aug 17 15:31:59 2014 +0300 +++ b/Lib/test/test_httpservers.py Sun Aug 17 16:57:39 2014 +0300 @@ -277,6 +277,13 @@ with open(os.path.join(self.tempdir, filename), 'wb') as f: f.write(support.TESTFN_UNDECODABLE) response = self.request(self.tempdir_name + '/') + if sys.platform == 'darwin': + # On Mac OS the HFS+ filesystem replaces bytes that aren't valid + # UTF-8 into a percent-encoded value. + for name in os.listdir(self.tempdir): + if name != 'test': # Ignore a filename created in setUp(). + filename = name + break body = self.check_status_and_reason(response, 200) quotedname = urllib.parse.quote(filename, errors='surrogatepass') self.assertIn(('href="%s"' % quotedname)