
PASS document.createElement must create an instance of custom elements 
PASS document.createElement must create an instance of autonomous custom elements when it has is attribute 
FAIL document.createElement()'s second argument is to be ignored when it's a string assert_true: expected true got false
PASS document.createElement must report a TypeError when the result of Construct is not a DOM node 
PASS document.createElement must report a TypeError when the result of Construct is a TextNode 
PASS document.createElement must report a NotSupportedError when attribute is added by setAttribute during construction 
PASS document.createElement must report a NotSupportedError when attribute is added by attributes.setNamedItem during construction 
PASS document.createElement must not report a NotSupportedError when attribute is added and removed during construction 
PASS document.createElement must report a NotSupportedError when a Text child is added during construction 
PASS document.createElement must report a NotSupportedError when a Comment child is added during construction 
PASS document.createElement must report a NotSupportedError when an element child is added during construction 
PASS document.createElement must not report a NotSupportedError when an element child is added and removed during construction 
PASS document.createElement must report a NotSupportedError when the element gets inserted into another element during construction 
PASS document.createElement must not report a NotSupportedError when the element is inserted and removed from another element during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a the document of the template elements during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a the document of the template elements during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a the document of the template elements during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a a new document during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a a new document during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a new document during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a a cloned document during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a a cloned document during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a cloned document during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a a document created by createHTMLDocument during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a a document created by createHTMLDocument during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a document created by createHTMLDocument during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a an HTML document created by createDocument during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a an HTML document created by createDocument during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a an HTML document created by createDocument during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a the document of an iframe during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a the document of an iframe during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a the document of an iframe during construction 
PASS document.createElement must report a NotSupportedError when the element is adopted into a an HTML document fetched by XHR during construction 
PASS document.createElement must report a NotSupportedError when the element is inserted into a an HTML document fetched by XHR during construction 
PASS document.createElement must not report a NotSupportedError when the element is adopted back from a an HTML document fetched by XHR during construction 
PASS document.createElement must report a NotSupportedError when the local name of the element does not match that of the custom element 
PASS document.createElement must report an exception thrown by a custom element constructor 
FAIL document.createElement must report an exception thrown by a custom built-in element constructor assert_throws: function "function () { new ThrowCustomBuiltinElement; }" threw object "TypeError: function is not a constructor (evaluating 'super()')" ("TypeError") expected object "[object Object]" ("exception thrown by a custom constructor")
FAIL document.createElement with unknown "is" value should create "undefined" state element assert_true: Undefined element is upgraded on connecting to a document expected true got false
PASS document.createElement with undefined options value should be upgraded. 

