
----- tests for getting a targetWindow's location object's functions which have custom overrides.  The desired behavior is for the targetWindow to return the builtin function, not the override -----

PASS: canGet('targetWindow.location.assign') should be 'true' and is.
PASS: toString('targetWindow.location.assign') should be 'function assign() {    [native code]}' and is.
PASS: canGet('targetWindow.location.reload') should be 'true' and is.
PASS: toString('targetWindow.location.reload') should be 'function reload() {    [native code]}' and is.
PASS: canGet('targetWindow.location.replace') should be 'true' and is.
PASS: toString('targetWindow.location.replace') should be 'function replace() {    [native code]}' and is.

