robotcode
robotcode copied to clipboard
[BUG] Debugger stops at nested but unreachable IF
Describe the bug Rather a minor but confusing behaviour. Not sure if it is a Robot Framework parsing issue.
Steps To Reproduce Execute the following test case. It passes.
Then set a breakpoint at the first IF, start debug session. When debugger stops at IF step-over it. The debugger stops at the inner nested IF, but does not execute anyhting.
*** Test Cases ***
Weird
weird debugger behavior
*** Keywords ***
weird debugger behavior
VAR ${has_token}= False
VAR ${has_time}= False
IF ${has_token} and ${has_time} # put breakpoint here, IF statement never evaluates to True
Log To Console Unreachable, debugger does not stop. All correct.
IF True # somehow debugger stops here
Log To Console Unreachable, but debugger stops at this "IF True" statement anyway
END
END
Sometimes after the execution, this error stacke trace is printed at command line. Not sure if this is related:
Exception in callback _ProactorBaseWritePipeTransport._loop_writing()
handle: <Handle _ProactorBaseWritePipeTransport._loop_writing()>
Traceback (most recent call last):
File "C:\Users\markuss\AppData\Roaming\uv\python\cpython-3.13.0-windows-x86_64-none\Lib\asyncio\events.py", line 89, in _run
self._context.run(self._callback, *self._args)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\markuss\AppData\Roaming\uv\python\cpython-3.13.0-windows-x86_64-none\Lib\asyncio\proactor_events.py", line 382, in _loop_writing
assert f is self._write_fut
^^^^^^^^^^^^^^^^^^^^
AssertionError
Expected behavior Debugger should not stop at inner IF, when the IF body is not executed.
Desktop (please complete the following information):
- VS Code Version: 1.105.1
- RobotCode Version: 2.0.1
- OS: Windows 11
- Python Version: 3.13
- RobotFramework Version: 7.3.2