| Test dom storage with many different types of keys (as opposed to values) |
| |
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
| |
| |
| Testing sessionStorage |
| storage.clear() |
| PASS storage.length is 0 |
| |
| PASS storage.getItem('FOO') is null |
| storage.setItem('FOO', 'BAR') |
| PASS storage.length is 1 |
| PASS storage.getItem('FOO') is "BAR" |
| PASS storage.getItem('foo') is null |
| PASS storage.foo is undefined. |
| PASS storage['foo'] is undefined. |
| storage.foo = 'x' |
| PASS storage.foo is "x" |
| PASS storage['foo'] is "x" |
| PASS storage.getItem('foo') is "x" |
| storage['foo'] = 'y' |
| PASS storage.foo is "y" |
| PASS storage['foo'] is "y" |
| PASS storage.getItem('foo') is "y" |
| storage.setItem('foo', 'z') |
| PASS storage.foo is "z" |
| PASS storage['foo'] is "z" |
| PASS storage.getItem('foo') is "z" |
| PASS storage.length is 2 |
| |
| Testing a null key |
| storage.setItem(null, 'asdf') |
| PASS storage.getItem('null') is "asdf" |
| PASS storage.getItem(null) is "asdf" |
| PASS storage['null'] is "asdf" |
| PASS storage[null] is "asdf" |
| PASS storage.length is 3 |
| storage[null] = 1 |
| PASS storage.getItem(null) is "1" |
| storage['null'] = 2 |
| PASS storage.getItem(null) is "2" |
| storage.setItem('null', 3) |
| PASS storage.getItem(null) is "3" |
| PASS storage.length is 3 |
| |
| Testing an undefined key |
| storage[undefined] = 'xyz' |
| PASS storage.getItem('undefined') is "xyz" |
| PASS storage.getItem(undefined) is "xyz" |
| PASS storage['undefined'] is "xyz" |
| PASS storage[undefined] is "xyz" |
| PASS storage.length is 4 |
| storage['undefined'] = 4 |
| PASS storage.getItem(undefined) is "4" |
| storage.setItem(undefined, 5) |
| PASS storage.getItem(undefined) is "5" |
| storage.setItem('undefined', 6) |
| PASS storage.getItem(undefined) is "6" |
| PASS storage.length is 4 |
| |
| Testing a numeric key |
| storage['2'] = 'ppp' |
| PASS storage.getItem('2') is "ppp" |
| PASS storage.getItem(2) is "ppp" |
| PASS storage['2'] is "ppp" |
| PASS storage[2] is "ppp" |
| PASS storage.length is 5 |
| storage[2] = 7 |
| PASS storage.getItem(2) is "7" |
| storage.setItem(2, 8) |
| PASS storage.getItem(2) is "8" |
| storage.setItem('2', 9) |
| PASS storage.getItem(2) is "9" |
| PASS storage.length is 5 |
| |
| Setting a non-ascii string to foo |
| storage[k] = 'hello' |
| PASS storage.getItem(k) is "hello" |
| PASS storage[k] is "hello" |
| PASS storage.length is 6 |
| |
| Testing case differences |
| storage.foo1 = 'lower1' |
| storage.FOO1 = 'UPPER1' |
| storage['foo2'] = 'lower2' |
| storage['FOO2'] = 'UPPER2' |
| storage.setItem('foo3', 'lower3') |
| storage.setItem('FOO3', 'UPPER3') |
| PASS storage.foo1 is "lower1" |
| PASS storage.FOO1 is "UPPER1" |
| PASS storage['foo2'] is "lower2" |
| PASS storage['FOO2'] is "UPPER2" |
| PASS storage.getItem('foo3') is "lower3" |
| PASS storage.getItem('FOO3') is "UPPER3" |
| PASS storage.length is 12 |
| |
| Testing overriding length |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.length = 0 |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage['length'] = 0 |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.setItem('length', 0) |
| PASS storage.length is 13 |
| PASS storage['length'] is 13 |
| PASS storage.getItem('length') is "0" |
| storage.removeItem('length') |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.setItem('length', 0) |
| PASS storage.length is 13 |
| |
| |
| Testing localStorage |
| storage.clear() |
| PASS storage.length is 0 |
| |
| PASS storage.getItem('FOO') is null |
| storage.setItem('FOO', 'BAR') |
| PASS storage.length is 1 |
| PASS storage.getItem('FOO') is "BAR" |
| PASS storage.getItem('foo') is null |
| PASS storage.foo is undefined. |
| PASS storage['foo'] is undefined. |
| storage.foo = 'x' |
| PASS storage.foo is "x" |
| PASS storage['foo'] is "x" |
| PASS storage.getItem('foo') is "x" |
| storage['foo'] = 'y' |
| PASS storage.foo is "y" |
| PASS storage['foo'] is "y" |
| PASS storage.getItem('foo') is "y" |
| storage.setItem('foo', 'z') |
| PASS storage.foo is "z" |
| PASS storage['foo'] is "z" |
| PASS storage.getItem('foo') is "z" |
| PASS storage.length is 2 |
| |
| Testing a null key |
| storage.setItem(null, 'asdf') |
| PASS storage.getItem('null') is "asdf" |
| PASS storage.getItem(null) is "asdf" |
| PASS storage['null'] is "asdf" |
| PASS storage[null] is "asdf" |
| PASS storage.length is 3 |
| storage[null] = 1 |
| PASS storage.getItem(null) is "1" |
| storage['null'] = 2 |
| PASS storage.getItem(null) is "2" |
| storage.setItem('null', 3) |
| PASS storage.getItem(null) is "3" |
| PASS storage.length is 3 |
| |
| Testing an undefined key |
| storage[undefined] = 'xyz' |
| PASS storage.getItem('undefined') is "xyz" |
| PASS storage.getItem(undefined) is "xyz" |
| PASS storage['undefined'] is "xyz" |
| PASS storage[undefined] is "xyz" |
| PASS storage.length is 4 |
| storage['undefined'] = 4 |
| PASS storage.getItem(undefined) is "4" |
| storage.setItem(undefined, 5) |
| PASS storage.getItem(undefined) is "5" |
| storage.setItem('undefined', 6) |
| PASS storage.getItem(undefined) is "6" |
| PASS storage.length is 4 |
| |
| Testing a numeric key |
| storage['2'] = 'ppp' |
| PASS storage.getItem('2') is "ppp" |
| PASS storage.getItem(2) is "ppp" |
| PASS storage['2'] is "ppp" |
| PASS storage[2] is "ppp" |
| PASS storage.length is 5 |
| storage[2] = 7 |
| PASS storage.getItem(2) is "7" |
| storage.setItem(2, 8) |
| PASS storage.getItem(2) is "8" |
| storage.setItem('2', 9) |
| PASS storage.getItem(2) is "9" |
| PASS storage.length is 5 |
| |
| Setting a non-ascii string to foo |
| storage[k] = 'hello' |
| PASS storage.getItem(k) is "hello" |
| PASS storage[k] is "hello" |
| PASS storage.length is 6 |
| |
| Testing case differences |
| storage.foo1 = 'lower1' |
| storage.FOO1 = 'UPPER1' |
| storage['foo2'] = 'lower2' |
| storage['FOO2'] = 'UPPER2' |
| storage.setItem('foo3', 'lower3') |
| storage.setItem('FOO3', 'UPPER3') |
| PASS storage.foo1 is "lower1" |
| PASS storage.FOO1 is "UPPER1" |
| PASS storage['foo2'] is "lower2" |
| PASS storage['FOO2'] is "UPPER2" |
| PASS storage.getItem('foo3') is "lower3" |
| PASS storage.getItem('FOO3') is "UPPER3" |
| PASS storage.length is 12 |
| |
| Testing overriding length |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.length = 0 |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage['length'] = 0 |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.setItem('length', 0) |
| PASS storage.length is 13 |
| PASS storage['length'] is 13 |
| PASS storage.getItem('length') is "0" |
| storage.removeItem('length') |
| PASS storage.length is 12 |
| PASS storage['length'] is 12 |
| PASS storage.getItem('length') is null |
| storage.setItem('length', 0) |
| PASS storage.length is 13 |
| PASS successfullyParsed is true |
| |
| TEST COMPLETE |
| |