Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(25)

Unified Diff: LayoutTests/imported/web-platform-tests/webstorage/storage_setitem.html

Issue 1220543007: Import web-platform-tests/webstorage (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/imported/web-platform-tests/webstorage/storage_setitem.html
diff --git a/LayoutTests/imported/web-platform-tests/webstorage/storage_setitem.html b/LayoutTests/imported/web-platform-tests/webstorage/storage_setitem.html
new file mode 100644
index 0000000000000000000000000000000000000000..2b4abd85bd4bff56bc3e65b839fd76473860abf7
--- /dev/null
+++ b/LayoutTests/imported/web-platform-tests/webstorage/storage_setitem.html
@@ -0,0 +1,160 @@
+<!DOCTYPE HTML>
+<mete 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>

Powered by Google App Engine
This is Rietveld 408576698