diff Lib/test/test_parser.py @ 82575:10a82140f36d 3.2

#11963: avoid printing messages in test_parser. Initial patch by Éric Araujo.
author Ezio Melotti <ezio.melotti@gmail.com>
date Sat, 09 Mar 2013 22:17:33 +0200
parents 0bda3f00b60a
children 64b87578c071 185c923f21ec
line wrap: on
line diff
--- a/Lib/test/test_parser.py	Sat Mar 09 05:54:00 2013 -0800
+++ b/Lib/test/test_parser.py	Sat Mar 09 22:17:33 2013 +0200
@@ -4,6 +4,7 @@
 import operator
 import struct
 from test import support
+from test.script_helper import assert_python_failure
 
 #
 #  First, we test that we can generate trees from valid source fragments,
@@ -607,10 +608,10 @@
 
     def test_trigger_memory_error(self):
         e = self._nested_expression(100)
-        print("Expecting 's_push: parser stack overflow' in next line",
-              file=sys.stderr)
-        sys.stderr.flush()
-        self.assertRaises(MemoryError, parser.expr, e)
+        rc, out, err = assert_python_failure('-c', e)
+        # parsing the expression will result in an error message
+        # followed by a MemoryError (see #11963)
+        self.assertEqual(err, b's_push: parser stack overflow\nMemoryError')
 
 class STObjectTestCase(unittest.TestCase):
     """Test operations on ST objects themselves"""