| This tests for caller property in functions. Only functions that are called from inside of other functions and have a parent should have this property set. Tests return true when caller is found and false when the caller is null. |
| |
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
| |
| |
| PASS childHasCallerWhenExecutingGlobalCode is false |
| PASS childHasCallerWhenCalledWithoutParent is false |
| PASS childHasCallerWhenCalledFromWithinParent is true |
| PASS nonStrictCaller(nonStrictCallee) is nonStrictCaller |
| PASS nonStrictCaller(strictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictCaller(nonStrictCallee) is null |
| PASS strictCaller(strictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictTailCaller(nonStrictCallee) is null |
| PASS strictTailCaller(strictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS nonStrictCaller(boundNonStrictCallee) is nonStrictCaller |
| PASS nonStrictCaller(boundStrictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictCaller(boundNonStrictCallee) is null |
| PASS strictCaller(boundStrictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictTailCaller(boundNonStrictCallee) is null |
| PASS strictTailCaller(boundStrictCallee) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS nonStrictCaller(new Proxy(nonStrictCallee, {})) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(nonStrictCallee, {}).bind()) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(new Proxy(nonStrictCallee, {}), {})) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(boundNonStrictCallee, {})) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(nonStrictCallee, Reflect)) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(new Proxy(nonStrictCallee, Reflect), {})) is nonStrictCaller |
| PASS nonStrictCaller(new Proxy(new Proxy(nonStrictCallee, {}), Reflect)) is null |
| PASS nonStrictGetter(nonStrictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS nonStrictGetter(strictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictGetter(nonStrictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictSetter(nonStrictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictGetter(strictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS strictSetter(strictAccessor) threw exception TypeError: 'arguments', 'callee', and 'caller' cannot be accessed in this context.. |
| PASS successfullyParsed is true |
| |
| TEST COMPLETE |
| |