blob: 1586f7a6128876f83cd9fc261583c55e70368d5d [file] [log] [blame]
<!DOCTYPE HTML>
<html>
<head>
<title>WebStorage Test: Storage - enumerate and built-in properties</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<div id="log"></div>
<script>
["localStorage", "sessionStorage"].forEach(function(name) {
test(function() {
assert_true(name in window, name + " exist");
var storage = window[name];
storage.clear();
Storage.prototype.prototypeTestKey = "prototypeTestValue";
storage.foo = "bar";
storage.fu = "baz";
storage.batman = "bin suparman";
storage.bar = "foo";
storage.alpha = "beta";
storage.zeta = "gamma";
var enumeratedArray = new Array();
for (var n in storage)
enumeratedArray.push(n);
// Sort the array, since the storage order isn't guaranteed
enumeratedArray.sort();
var expectArray = ["alpha", "bar", "batman", "foo", "fu", "prototypeTestKey", "zeta"];
assert_array_equals(enumeratedArray, expectArray);
}, name + ": enumerate a Storage object and get only the keys as a result and the built-in properties of the Storage object should be ignored");
});
</script>
</body>
</html>