diff -r 406965684327 Lib/test/test_sax.py --- a/Lib/test/test_sax.py Fri Nov 21 23:35:12 2014 -0600 +++ b/Lib/test/test_sax.py Sat Nov 22 23:51:19 2014 +0100 @@ -18,6 +18,7 @@ import codecs import os.path import shutil +import subprocess from test import support from test.support import findfile, run_unittest @@ -891,6 +892,17 @@ self.assertEqual(parser.getSystemId(), fname) self.assertEqual(parser.getPublicId(), None) + def test_expat_subprocess(self): + result = BytesIO() + xmlgen = XMLGenerator(result) + parser = create_parser() + parser.setContentHandler(xmlgen) + proc = subprocess.Popen(["cat", TEST_XMLFILE], stdout=subprocess.PIPE) + parser.parse(proc.stdout) + + self.assertNotEquals(parser.getSystemId(), TEST_XMLFILE) + self.assertEqual(parser.getPublicId(), None) + # =========================================================================== #