The 'name' property on interface objects should have attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


* Event
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "Event"
* Element
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "Element"
* Document
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "Document"
* Window
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "Window"
* HTMLOptionElement
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "HTMLOptionElement"
* Option
PASS descriptor.writable is false
PASS descriptor.enumerable is false
PASS descriptor.configurable is true
PASS descriptor.value is "Option"
PASS successfullyParsed is true

TEST COMPLETE

