[pypy-commit] pypy reverse-debugger: locals. fix tests.
arigo
pypy.commits at gmail.com
Mon Jun 20 06:17:58 EDT 2016
Author: Armin Rigo <arigo at tunes.org>
Branch: reverse-debugger
Changeset: r85238:e0198f596958
Date: 2016-06-20 12:19 +0200
http://bitbucket.org/pypy/pypy/changeset/e0198f596958/
Log: locals. fix tests.
diff --git a/rpython/rlib/revdb.py b/rpython/rlib/revdb.py
--- a/rpython/rlib/revdb.py
+++ b/rpython/rlib/revdb.py
@@ -10,9 +10,10 @@
from rpython.rtyper.lltypesystem import rffi
-CMD_PRINT = 1
+CMD_PRINT = 1
CMD_BACKTRACE = 2
-ANSWER_TEXT = 20
+CMD_LOCALS = 3
+ANSWER_TEXT = 20
def stop_point():
diff --git a/rpython/translator/revdb/interact.py b/rpython/translator/revdb/interact.py
--- a/rpython/translator/revdb/interact.py
+++ b/rpython/translator/revdb/interact.py
@@ -116,3 +116,7 @@
"""Show the backtrace"""
self.pgroup.show_backtrace()
command_bt = command_backtrace
+
+ def command_locals(self, argument):
+ """Show the locals"""
+ self.pgroup.show_locals()
diff --git a/rpython/translator/revdb/message.py b/rpython/translator/revdb/message.py
--- a/rpython/translator/revdb/message.py
+++ b/rpython/translator/revdb/message.py
@@ -8,6 +8,7 @@
# by revdb.register_debug_command()
CMD_PRINT = 1
CMD_BACKTRACE = 2
+CMD_LOCALS = 3
ANSWER_INIT = -20
ANSWER_STD = -21
diff --git a/rpython/translator/revdb/process.py b/rpython/translator/revdb/process.py
--- a/rpython/translator/revdb/process.py
+++ b/rpython/translator/revdb/process.py
@@ -1,4 +1,4 @@
-import os, struct, socket, errno, subprocess
+import sys, os, struct, socket, errno, subprocess
from rpython.translator.revdb import ancillary
from rpython.translator.revdb.message import *
@@ -104,7 +104,8 @@
while True:
msg = self.recv()
if msg.cmd == ANSWER_TEXT:
- print msg.extra
+ sys.stdout.write(msg.extra)
+ sys.stdout.flush()
elif msg.cmd == ANSWER_STD:
self.update_times(msg)
break
@@ -216,3 +217,9 @@
"""
self.active.send(Message(CMD_BACKTRACE))
self.active.print_text_answer()
+
+ def show_locals(self):
+ """Show the locals.
+ """
+ self.active.send(Message(CMD_LOCALS))
+ self.active.print_text_answer()
diff --git a/rpython/translator/revdb/test/test_basic.py b/rpython/translator/revdb/test/test_basic.py
--- a/rpython/translator/revdb/test/test_basic.py
+++ b/rpython/translator/revdb/test/test_basic.py
@@ -360,7 +360,6 @@
def test_interaction_with_forward(self):
child = self.replay()
- child.send(Message(1, extra='oops'))
child.send(Message(CMD_FORWARD, 50))
child.expect(ANSWER_AT_END)
diff --git a/rpython/translator/revdb/test/test_process.py b/rpython/translator/revdb/test/test_process.py
--- a/rpython/translator/revdb/test/test_process.py
+++ b/rpython/translator/revdb/test/test_process.py
@@ -65,6 +65,7 @@
group = ReplayProcessGroup(str(self.exename), self.rdbname)
group.active.send(Message(1, 6, extra='set-breakpoint'))
group.active.expect(42, 1, -43, -44, 'set-breakpoint')
+ group.active.expect(ANSWER_STD, 1, Ellipsis)
e = py.test.raises(Breakpoint, group.go_forward, 10)
assert e.value.num == 99
group._check_current_time(7)
More information about the pypy-commit
mailing list