name.js (638B)
1 "use strict"; 2 importScripts("/resources/testharness.js"); 3 4 test(() => { 5 assert_true(self.hasOwnProperty("name"), "property exists on the global"); 6 assert_equals(self.name, "my name"); 7 }, `name property value for ${self.constructor.name}`); 8 9 test(() => { 10 self.name = "something new"; 11 const propDesc = Object.getOwnPropertyDescriptor(self, "name"); 12 assert_equals(propDesc.value, "something new", "value"); 13 assert_true(propDesc.configurable, "configurable"); 14 assert_true(propDesc.writable, "writable"); 15 assert_true(propDesc.enumerable, "enumerable"); 16 }, `name property is replaceable for ${self.constructor.name}`); 17 18 done();