| <script> |
| var myObj = {test : 1}; |
| function getObject() |
| { |
| return myObj; |
| } |
| |
| function statement() { |
| ; |
| } |
| |
| function runForIn() |
| { |
| /* place breakpoint on next line and click continue */ debugger; |
| for (var property in getObject()) |
| statement(); |
| } |
| |
| </script> |
| Start a debugging session in the Web Inspector and open this file. |
| <br><br> |
| Before running the tests please perform the following: |
| Make sure the execution is not paused in the debugger.<br> |
| Click the button and when the debugger breaks, set a breakpoint on the first line in the loop |
| (as indicated by the comment), and click continue.<br> |
| The debugger should stop at the beggining of the loop.<br> |
| The above actions should be performed before <b>each</b> of the following tests. |
| <br><br> |
| <input type="button" value="run for-in" onclick="runForIn()"/> |
| <br><br> |
| TEST 1: Click 'continue'. Execution should continue without stopping on the loop breakpoint again.<br> |
| TEST 2: Click 'Step over'. Debugger should step inside the loop to the next statement line.<br> |
| TEST 3: Click 'Step into'. Debugger should step into 'getObject' function.<br> |
| TEST 4: 'Step over' to the statement line and then 'Step over' again. Debugger should pause on |
| the for-in loop again.<br> |