Tests storage with named item access and Symbol properties.

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


PASS localStorage.length === 0 is true
PASS localStorage[Symbol()] === undefined is true
PASS localStorage.length === 0 is true
PASS localStorage[knownSymbol] === 2 is true
PASS delete localStorage[knownSymbol] did not throw exception.
PASS localStorage.length === 0 is true
PASS localStorage[knownSymbol] === undefined is true
PASS localStorage.length === 1 is true
PASS localStorage['Symbol()'] === '3' is true
PASS localStorage.key(0) === 'Symbol()' is true
PASS localStorage[''] === undefined is true
PASS localStorage[''] === '4' is true
PASS localStorage.length === 2 is true
PASS delete localStorage['Symbol()'] did not throw exception.
PASS localStorage.length === 1 is true
PASS localStorage['Symbol()'] === undefined is true
PASS delete localStorage[''] did not throw exception.
PASS localStorage.length === 0 is true
PASS localStorage[''] === undefined is true
PASS successfullyParsed is true

TEST COMPLETE

