From 11fa11bc953f7e37788798ef655ac624ac7787f4 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Mon, 20 Feb 2012 21:55:32 -0500 Subject: [PATCH] fix test_gdb under hash randomization --- Lib/test/test_gdb.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py index 0a2d883fa4..92e5c5279b 100644 --- a/Lib/test/test_gdb.py +++ b/Lib/test/test_gdb.py @@ -58,13 +58,18 @@ class DebuggerTests(unittest.TestCase): """Test that the debugger can debug Python.""" - def run_gdb(self, *args): + def run_gdb(self, *args, **env_vars): """Runs gdb with the command line given by *args. Returns its stdout, stderr """ + if env_vars: + env = os.environ.copy() + env.update(env_vars) + else: + env = None out, err = subprocess.Popen( - args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, + args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env ).communicate() return out, err @@ -124,7 +129,7 @@ class DebuggerTests(unittest.TestCase): # print ' '.join(args) # Use "args" to invoke gdb, capturing stdout, stderr: - out, err = self.run_gdb(*args) + out, err = self.run_gdb(*args, PYTHONHASHSEED='0') # Ignore some noise on stderr due to the pending breakpoint: err = err.replace('Function "%s" not defined.\n' % breakpoint, '') @@ -213,7 +218,7 @@ class PrettyPrintTests(DebuggerTests): 'Verify the pretty-printing of dictionaries' self.assertGdbRepr({}) self.assertGdbRepr({'foo': 'bar'}) - self.assertGdbRepr({'foo': 'bar', 'douglas':42}) + self.assertGdbRepr("{'foo': 'bar', 'douglas':42}") def test_lists(self): 'Verify the pretty-printing of lists' @@ -273,8 +278,8 @@ print s''') def test_frozensets(self): 'Verify the pretty-printing of frozensets' self.assertGdbRepr(frozenset()) - self.assertGdbRepr(frozenset(['a', 'b'])) - self.assertGdbRepr(frozenset([4, 5, 6])) + self.assertGdbRepr("frozenset(['a', 'b'])") + self.assertGdbRepr("frozenset([4, 5, 6])") def test_exceptions(self): # Test a RuntimeError -- 2.40.0