Checks that restarting every frame on the stack works. ---- Restarting at frame index 0 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "A" ... Paused at (after restart): function A() { #console.log('A'); debugger; Evaluating to: Magic value Called functions: F,E,D,C,B,A,A ---- Restarting at frame index 1 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "B" ... Paused at (after restart): function B(param1, param2) { #console.log('B'); return A(); Evaluating to: Magic value Called functions: F,E,D,C,B,A,B,A ---- Restarting at frame index 2 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "C" ... Paused at (after restart): function C() { #console.log('C'); // Function call with argument adapter is intentional. Evaluating to: Magic value Called functions: F,E,D,C,B,A,C,B,A ---- Restarting at frame index 3 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "D" ... Paused at (after restart): function D() { #console.log('D'); // Function call with argument adapter is intentional. Evaluating to: Magic value Called functions: F,E,D,C,B,A,D,C,B,A ---- Restarting at frame index 4 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "E" ... Paused at (after restart): function E() { #console.log('E'); return D(); Evaluating to: Magic value Called functions: F,E,D,C,B,A,E,D,C,B,A ---- Restarting at frame index 5 ---- Paused at (after evaluation): console.log('A'); #debugger; return 'Magic value'; Pause stack: A:3 (canBeRestarted = true) B:8 (canBeRestarted = true) C:13 (canBeRestarted = true) D:18 (canBeRestarted = true) E:22 (canBeRestarted = true) F:26 (canBeRestarted = true) Restarting function "F" ... Paused at (after restart): function F() { #console.log('F'); return E(); Evaluating to: Magic value Called functions: F,E,D,C,B,A,F,E,D,C,B,A