Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /webstorage/storage_getitem.window.html - WPT Dashboard Interop Dashboard
["localStorage", "sessionStorage"].forEach(function(name) {
test(function() {
var storage = window[name];
storage.clear();
storage.setItem("name", "x");
storage.setItem("undefined", "foo");
storage.setItem("null", "bar");
storage.setItem("", "baz");
test(function() {
assert_equals(storage.length, 4);
}, "All items should be added to " + name + ".");
test(function() {
assert_equals(storage["unknown"], undefined, "storage['unknown']")
assert_equals(storage["name"], "x", "storage['name']")
assert_equals(storage["undefined"], "foo", "storage['undefined']")
assert_equals(storage["null"], "bar", "storage['null']")
assert_equals(storage[undefined], "foo", "storage[undefined]")
assert_equals(storage[null], "bar", "storage[null]")
assert_equals(storage[""], "baz", "storage['']")
}, "Named access to " + name + " should be correct");
test(function() {
assert_equals(storage.getItem("unknown"), null, "storage.getItem('unknown')")
assert_equals(storage.getItem("name"), "x", "storage.getItem('name')")
assert_equals(storage.getItem("undefined"), "foo", "storage.getItem('undefined')")
assert_equals(storage.getItem("null"), "bar", "storage.getItem('null')")
assert_equals(storage.getItem(undefined), "foo", "storage.getItem(undefined)")
assert_equals(storage.getItem(null), "bar", "storage.getItem(null)")
assert_equals(storage.getItem(""), "baz", "storage.getItem('')")
}, name + ".getItem should be correct")
}, "Get value by getIten(key) and named access in " + name + ".");
});