mirror of
https://github.com/servo/servo.git
synced 2025-09-01 02:28:21 +01:00
Update web-platform-tests to revision 78c15447152438264b49f4488683f60ee47d068f
This commit is contained in:
parent
007333e123
commit
314da91646
13 changed files with 207 additions and 79 deletions
|
@ -0,0 +1,81 @@
|
|||
["localStorage", "sessionStorage"].forEach(function(name) {
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
storage[key] = "test";
|
||||
assert_equals(storage[key], "test");
|
||||
}, name + ": plain set + get (loose)");
|
||||
|
||||
test(function() {
|
||||
"use strict";
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
storage[key] = "test";
|
||||
assert_equals(storage[key], "test");
|
||||
}, name + ": plain set + get (strict)");
|
||||
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
Object.defineProperty(storage, key, { "value": "test" });
|
||||
assert_equals(storage[key], "test");
|
||||
}, name + ": defineProperty + get");
|
||||
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
Object.defineProperty(storage, key, { "value": "test", "configurable": false });
|
||||
assert_equals(storage[key], "test");
|
||||
var desc = Object.getOwnPropertyDescriptor(storage, key);
|
||||
assert_true(desc.configurable, "configurable");
|
||||
|
||||
assert_true(delete storage[key]);
|
||||
assert_equals(storage[key], undefined);
|
||||
}, name + ": defineProperty not configurable");
|
||||
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
Storage.prototype[key] = "test";
|
||||
this.add_cleanup(function() { delete Storage.prototype[key]; });
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
assert_equals(storage[key], "test");
|
||||
var desc = Object.getOwnPropertyDescriptor(storage, key);
|
||||
assert_equals(desc, undefined);
|
||||
}, name + ": get with symbol on prototype");
|
||||
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
storage[key] = "test";
|
||||
assert_true(delete storage[key]);
|
||||
assert_equals(storage[key], undefined);
|
||||
}, name + ": delete existing property");
|
||||
|
||||
test(function() {
|
||||
var key = Symbol();
|
||||
|
||||
var storage = window[name];
|
||||
storage.clear();
|
||||
|
||||
assert_true(delete storage[key]);
|
||||
assert_equals(storage[key], undefined);
|
||||
}, name + ": delete non-existent property");
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue