mirror of
https://github.com/classilla/tenfourfox.git
synced 2026-03-14 12:16:32 +00:00
161 lines
5.1 KiB
HTML
161 lines
5.1 KiB
HTML
<!DOCTYPE HTML>
|
|
<meta charset=utf-8>
|
|
<title>WebStorage Test: Storage - setItem(key, value)</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<div id="log"></div>
|
|
<script>
|
|
["localStorage", "sessionStorage"].forEach(function(name) {
|
|
var test_error = { name: "test" };
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem("name", "user1");
|
|
assert_equals(storage.length, 1, "localStorage.setItem")
|
|
}, name + ".setItem()");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage["name"] = "user1";
|
|
assert_true("name" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("name"), "user1");
|
|
assert_equals(storage["name"], "user1");
|
|
}, name + "[]");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage["name"] = "user1";
|
|
storage["name"] = "user2";
|
|
assert_true("name" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("name"), "user2");
|
|
assert_equals(storage["name"], "user2");
|
|
}, name + "[] update");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem("age", null);
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "null");
|
|
assert_equals(storage["age"], "null");
|
|
}, name + ".setItem(_, null)");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage["age"] = null;
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "null");
|
|
assert_equals(storage["age"], "null");
|
|
}, name + "[] = null");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem("age", undefined);
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "undefined");
|
|
assert_equals(storage["age"], "undefined");
|
|
}, name + ".setItem(_, undefined)");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage["age"] = undefined;
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "undefined");
|
|
assert_equals(storage["age"], "undefined");
|
|
}, name + "[] = undefined");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem("age", "10");
|
|
assert_throws(test_error, function() {
|
|
storage.setItem("age",
|
|
{ toString: function() { throw test_error; } });
|
|
});
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "10");
|
|
assert_equals(storage["age"], "10");
|
|
}, name + ".setItem({ throws })");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem("age", "10");
|
|
assert_throws(test_error, function() {
|
|
storage["age"] =
|
|
{ toString: function() { throw test_error; } };
|
|
});
|
|
assert_true("age" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("age"), "10");
|
|
assert_equals(storage["age"], "10");
|
|
}, name + "[] = { throws }");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem(undefined, "test");
|
|
assert_true("undefined" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("undefined"), "test");
|
|
assert_equals(storage["undefined"], "test");
|
|
}, name + ".setItem(undefined, _)");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage[undefined] = "test2";
|
|
assert_true("undefined" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("undefined"), "test2");
|
|
assert_equals(storage["undefined"], "test2");
|
|
}, name + "[undefined]");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage.setItem(null, "test");
|
|
assert_true("null" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("null"), "test");
|
|
assert_equals(storage["null"], "test");
|
|
}, name + ".setItem(null, _)");
|
|
|
|
test(function() {
|
|
var storage = window[name];
|
|
storage.clear();
|
|
|
|
storage[null] = "test2";
|
|
assert_true("null" in storage);
|
|
assert_equals(storage.length, 1, "storage.length")
|
|
assert_equals(storage.getItem("null"), "test2");
|
|
assert_equals(storage["null"], "test2");
|
|
}, name + "[null]");
|
|
});
|
|
</script>
|