44
55import sys
66
7+ import pytest
78import tracer
9+ from xdis import IS_PYPY , PYTHON_VERSION_TRIPLE
810
911from trepan .api import run_call , run_eval
1012from trepan .inout .stringarray import StringArrayInput , StringArrayOutput
@@ -15,6 +17,10 @@ def plus5(n: int) -> int:
1517 return n + 5
1618
1719
20+ @pytest .mark .skipif (
21+ IS_PYPY and PYTHON_VERSION_TRIPLE < (3 , 7 , 0 ),
22+ reason = "PyPy strings work differently" ,
23+ )
1824def test_run_xxx ():
1925 """
2026 test run_eval() and run_call()
@@ -32,12 +38,14 @@ def test_run_xxx():
3238 print ('Issuing: run_eval("1+2")' )
3339 print (run_eval ("1+2" , debug_opts = debug_opts ))
3440 print (debugger_output .output )
35- start_lineno = "1" if sys .version_info [:2 ] < (3 , 10 ) else "0"
41+ start_lineno = "1" if sys .version_info [:2 ] < (3 , 11 ) else "0"
42+
3643 assert debugger_output .output [0 :3 ] == [
3744 "call - <string>:%s" % start_lineno ,
3845 "line - <string>:1" ,
3946 "return - <string>:1, 3 " ,
4047 ]
48+
4149 debugger_input = StringArrayInput (["" ])
4250 debugger_output = StringArrayOutput ()
4351 debug_opts = {
@@ -49,12 +57,12 @@ def test_run_xxx():
4957 print ('Issuing: run_call(foo, 3")' )
5058 x = run_call (plus5 , 3 , debug_opts = debug_opts )
5159 assert x == 8
52- call_lineno = "14 "
60+ call_lineno = "16 "
5361 for i , (prefix , suffix ) in enumerate (
5462 (
5563 ("call - " , "test/unit/test_api.py:%s" % call_lineno ),
56- ("line - " , "test/unit/test_api.py:15 " ),
57- ("return - " , "test/unit/test_api.py:15 , 8 " ),
64+ ("line - " , "test/unit/test_api.py:17 " ),
65+ ("return - " , "test/unit/test_api.py:17 , 8 " ),
5866 )
5967 ):
6068 assert debugger_output .output [i ].startswith (prefix ), (
0 commit comments