[Python-checkins] cpython (merge 3.2 -> 3.3): Issue #11159: Add tests for testing SAX parser support of non-ascii file names.

serhiy.storchaka python-checkins at python.org
Sat Feb 2 09:44:38 CET 2013


http://hg.python.org/cpython/rev/b85ba45b9579
changeset:   81911:b85ba45b9579
branch:      3.3
parent:      81903:8fbab6648309
parent:      81910:d2622ca8493a
user:        Serhiy Storchaka <storchaka at gmail.com>
date:        Sat Feb 02 10:31:50 2013 +0200
summary:
  Issue #11159: Add tests for testing SAX parser support of non-ascii file names.

files:
  Lib/test/test_sax.py |  44 ++++++++++++++++++++++++++++++++
  1 files changed, 44 insertions(+), 0 deletions(-)


diff --git a/Lib/test/test_sax.py b/Lib/test/test_sax.py
--- a/Lib/test/test_sax.py
+++ b/Lib/test/test_sax.py
@@ -14,6 +14,8 @@
 from xml.sax.handler import feature_namespaces
 from xml.sax.xmlreader import InputSource, AttributesImpl, AttributesNSImpl
 from io import StringIO
+import shutil
+from test import support
 from test.support import findfile, run_unittest
 import unittest
 
@@ -481,6 +483,20 @@
 
         self.assertEqual(result.getvalue(), xml_test_out)
 
+    def test_expat_file_nonascii(self):
+        fname = support.TESTFN_UNICODE
+        shutil.copyfile(TEST_XMLFILE, fname)
+        self.addCleanup(support.unlink, fname)
+
+        parser = create_parser()
+        result = StringIO()
+        xmlgen = XMLGenerator(result)
+
+        parser.setContentHandler(xmlgen)
+        parser.parse(open(fname))
+
+        self.assertEqual(result.getvalue(), xml_test_out)
+
     # ===== DTDHandler support
 
     class TestDTDHandler:
@@ -620,6 +636,20 @@
 
         self.assertEqual(result.getvalue(), xml_test_out)
 
+    def test_expat_inpsource_sysid_nonascii(self):
+        fname = support.TESTFN_UNICODE
+        shutil.copyfile(TEST_XMLFILE, fname)
+        self.addCleanup(support.unlink, fname)
+
+        parser = create_parser()
+        result = StringIO()
+        xmlgen = XMLGenerator(result)
+
+        parser.setContentHandler(xmlgen)
+        parser.parse(InputSource(fname))
+
+        self.assertEqual(result.getvalue(), xml_test_out)
+
     def test_expat_inpsource_stream(self):
         parser = create_parser()
         result = StringIO()
@@ -694,6 +724,20 @@
         self.assertEqual(parser.getSystemId(), TEST_XMLFILE)
         self.assertEqual(parser.getPublicId(), None)
 
+    def test_expat_locator_withinfo_nonascii(self):
+        fname = support.TESTFN_UNICODE
+        shutil.copyfile(TEST_XMLFILE, fname)
+        self.addCleanup(support.unlink, fname)
+
+        result = StringIO()
+        xmlgen = XMLGenerator(result)
+        parser = create_parser()
+        parser.setContentHandler(xmlgen)
+        parser.parse(fname)
+
+        self.assertEqual(parser.getSystemId(), fname)
+        self.assertEqual(parser.getPublicId(), None)
+
 
 # ===========================================================================
 #

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list