blob: 53aa0b33a08ad3abbd45735912d4f9c8e1e89338 [file] [log] [blame]
Testing document.register() type extension behaviours through createElement().
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS document.register('x-foo', { prototype: Object.create(HTMLDivElement.prototype) }) threw exception Error: InvalidStateError: DOM Exception 11.
PASS fooNewed.outerHTML is '<x-foo></x-foo>'
PASS fooNewed instanceof fooConstructor && fooNewed instanceof HTMLElement is true
PASS fooNewed instanceof HTMLUnknownElement is false
PASS barNewed.outerHTML is '<input is="x-bar">'
PASS barNewed instanceof barConstructor && barNewed instanceof HTMLInputElement is true
PASS isFormControl(barNewed) is true
PASS bazNewed.outerHTML is '<x-baz></x-baz>'
PASS bazNewed instanceof bazConstructor && bazNewed instanceof HTMLElement is true
PASS bazNewed instanceof HTMLUnknownElement is false
PASS quxNewed instanceof quxConstructor && quxNewed instanceof barConstructor && quxNewed instanceof HTMLInputElement is true
PASS quxNewed.outerHTML is '<input is="x-qux">'
PASS isFormControl(quxNewed) is true
PASS fooCreated.outerHTML is '<x-foo></x-foo>'
PASS fooCreated instanceof fooConstructor is true
PASS barCreated.outerHTML is '<x-bar></x-bar>'
PASS barCreated instanceof barConstructor is false
PASS barCreated instanceof HTMLUnknownElement is true
PASS bazCreated.outerHTML is '<x-baz></x-baz>'
PASS bazCreated instanceof bazConstructor is true
PASS bazCreated instanceof HTMLUnknownElement is false
PASS quxCreated.outerHTML is '<x-qux></x-qux>'
PASS quxCreated instanceof quxConstructor is false
PASS quxCreated instanceof HTMLUnknownElement is true
PASS divFooCreated.outerHTML is '<div is="x-foo"></div>'
PASS divFooCreated instanceof fooConstructor is false
PASS divFooCreated instanceof HTMLDivElement is true
PASS inputBarCreated.outerHTML is '<input is="x-bar">'
PASS inputBarCreated instanceof barConstructor is true
PASS inputBarCreated instanceof HTMLUnknownElement is false
PASS isFormControl(inputBarCreated) is true
PASS divBarCreated.outerHTML is '<div is="x-bar"></div>'
PASS divBarCreated instanceof barConstructor is false
PASS divBarCreated instanceof HTMLDivElement is true
PASS fooBarCreated.outerHTML is '<x-foo is="x-bar"></x-foo>'
PASS fooBarCreated instanceof fooConstructor is true
PASS barFooCreated.outerHTML is '<x-bar is="x-foo"></x-bar>'
PASS barFooCreated instanceof HTMLUnknownElement is true
PASS fooCreatedNull.outerHTML is '<x-foo></x-foo>'
PASS fooCreatedNull instanceof fooConstructor is true
PASS fooCreatedEmpty.outerHTML is '<x-foo></x-foo>'
PASS fooCreatedEmpty instanceof fooConstructor is true
PASS document.createElement('@invalid', 'x-bar') threw exception Error: InvalidCharacterError: DOM Exception 5.
PASS fooCreatedNS.outerHTML is '<x-foo></x-foo>'
PASS fooCreatedNS instanceof fooConstructor is true
PASS barCreatedNS.outerHTML is '<input is="x-bar">'
PASS barCreatedNS instanceof barConstructor is true
PASS isFormControl(barCreatedNS) is true
PASS document.createElementNS('http://example.com/2013/no-such-namespace', 'xml:lang', 'x-bar') threw exception Error: NamespaceError: DOM Exception 14.
PASS fooParsed instanceof fooConstructor is true
PASS barParsed instanceof barConstructor is true
PASS isFormControl(barParsed) is true
PASS divFooParsed instanceof fooConstructor is false
PASS divFooParsed instanceof HTMLDivElement is true
PASS namedBarParsed instanceof barConstructor is false
PASS namedBarParsed instanceof HTMLUnknownElement is true
PASS divBarParsed instanceof barConstructor is false
PASS divBarParsed instanceof HTMLDivElement is true
PASS successfullyParsed is true
TEST COMPLETE