| <!DOCTYPE HTML> |
| <meta charset=utf-8> |
| <title>WebStorage Test: Storage - indexed getter</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id="log"></div> |
| <script> |
| ["localStorage", "sessionStorage"].forEach(function(name) { |
| test(function() { |
| var storage = window[name]; |
| storage.clear(); |
| storage["name"] = "user1"; |
| storage["age"] = "42"; |
| |
| test(function() { |
| assert_equals(storage[-1], undefined); |
| assert_equals(storage[0], undefined); |
| assert_equals(storage[1], undefined); |
| assert_equals(storage[2], undefined); |
| }, "Getting number properties on " + name); |
| |
| test(function() { |
| assert_equals(storage["-1"], undefined); |
| assert_equals(storage["0"], undefined); |
| assert_equals(storage["1"], undefined); |
| assert_equals(storage["2"], undefined); |
| }, "Getting number-valued string properties on " + name); |
| |
| test(function() { |
| storage.setItem(1, "number"); |
| assert_equals(storage[1], "number"); |
| assert_equals(storage["1"], "number"); |
| }, "Getting existing number-valued properties on " + name); |
| }, "Indexed getter on " + name); |
| }); |
| </script> |