This tests that customized properties on window.location and window.navigator won't get lost after garbage collection. Results may be different when run manually, since forcing GC may not be exposed in all applications. Browsers disagree about what happens to properties on window.screen, window.history, and others through 'toolbar' in the list below, but the behavior of window.location and window.navigator is consistent.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS window.screen.myProp is 10
PASS window.history.myProp is 10
PASS window.locationbar.myProp is 10
PASS window.menubar.myProp is 10
PASS window.personalbar.myProp is 10
PASS window.scrollbars.myProp is 10
PASS window.statusbar.myProp is 10
PASS window.toolbar.myProp is 10
PASS window.location.myProp is 10
PASS window.navigator.myProp is 10
PASS successfullyParsed is true

TEST COMPLETE

