[pypy-svn] pypy default: A failing test, but skipped because it looks not important.
arigo
commits-noreply at bitbucket.org
Wed Feb 9 19:44:36 CET 2011
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r41753:0807e9d2e666
Date: 2011-02-09 18:33 +0100
http://bitbucket.org/pypy/pypy/changeset/0807e9d2e666/
Log: A failing test, but skipped because it looks not important. Will
come back to it later.
diff --git a/pypy/interpreter/test/test_pyframe.py b/pypy/interpreter/test/test_pyframe.py
--- a/pypy/interpreter/test/test_pyframe.py
+++ b/pypy/interpreter/test/test_pyframe.py
@@ -407,3 +407,30 @@
res = f(1)
sys.settrace(None)
assert res == 42
+
+ def test_set_unset_f_trace(self):
+ skip("in-progress, but not too important")
+ import sys
+ seen = []
+ def trace1(frame, what, arg):
+ seen.append((1, frame, frame.f_lineno, what, arg))
+ return trace1
+ def trace2(frame, what, arg):
+ seen.append((2, frame, frame.f_lineno, what, arg))
+ return trace2
+ def set_the_trace(f):
+ f.f_trace = trace1
+ sys.settrace(trace2)
+ len(seen) # take one line: should not be traced
+ f = sys._getframe()
+ set_the_trace(f)
+ len(seen) # take one line: should not be traced
+ len(seen) # take one line: should not be traced
+ sys.settrace(None) # and this line should be the last line traced
+ len(seen) # take one line
+ del f.f_trace
+ len(seen) # take one line
+ firstline = set_the_trace.func_code.co_firstlineno
+ assert seen == [(1, f, firstline + 6, 'line', None),
+ (1, f, firstline + 7, 'line', None),
+ (1, f, firstline + 8, 'line', None)]
More information about the Pypy-commit
mailing list