node/test/fixtures/wpt/webstorage/storage_removeitem.window.js
cjihrig 3d09e579d3 deps,lib,src: add experimental web storage
This commit introduces an experimental implementation of the Web
Storage API using SQLite as the backing data store.

PR-URL: https://github.com/nodejs/node/pull/52435
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
2024-06-14 18:40:04 +00:00

45 lines
1.3 KiB
JavaScript

["localStorage", "sessionStorage"].forEach(function(name) {
test(function() {
var storage = window[name];
storage.clear();
storage.setItem("name", "user1");
assert_equals(storage.getItem("name"), "user1");
storage.removeItem("name");
storage.removeItem("unknown");
assert_equals(storage.getItem("name"), null, "storage.getItem('name')")
}, name + ".removeItem()");
test(function() {
var storage = window[name];
storage.clear();
storage.setItem("name", "user1");
assert_equals(storage.getItem("name"), "user1");
delete storage["name"];
delete storage["unknown"];
assert_equals(storage.getItem("name"), null, "storage.getItem('name')")
}, "delete " + name + "[]");
test(function() {
var storage = window[name];
storage.clear();
storage.setItem("null", "test");
assert_true("null" in storage);
storage.removeItem(null);
assert_false("null" in storage);
}, name + ".removeItem(null)");
test(function() {
var storage = window[name];
storage.clear();
storage.setItem("undefined", "test");
assert_true("undefined" in storage);
storage.removeItem(undefined);
assert_false("undefined" in storage);
}, name + ".removeItem(undefined)");
});