Testing document.register() basic behaviors.

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


PASS document.register('foo', createRegisterParamters()) threw exception Error: InvalidCharacterError: DOM Exception 5.
PASS document.register('xfoo', createRegisterParamters()) threw exception Error: InvalidCharacterError: DOM Exception 5.
PASS document.register('missing-glyph', createRegisterParamters()) threw exception Error: InvalidCharacterError: DOM Exception 5.
PASS typeof fooConstructor is 'function'
PASS fooConstructor.prototype.__proto__ is HTMLElement.prototype
PASS fooConstructor.prototype.thisIsPrototype is true
PASS document.register('x-foo', createRegisterParamters()) threw exception Error: InvalidStateError: DOM Exception 11.
PASS document.register('X-FOO', createRegisterParamters()) threw exception Error: InvalidStateError: DOM Exception 11.
PASS document.register('x-bad-a', { prototype: HTMLElement.prototype }) threw exception Error: InvalidStateError: DOM Exception 11.
PASS document.register('x-bad-b', { prototype: {} }) threw exception Error: InvalidStateError: DOM Exception 11.
PASS document.register('x-bad-c', { prototype: Object.create(Document.prototype) }) threw exception Error: InvalidStateError: DOM Exception 11.
PASS fooConstructor() threw exception TypeError: DOM object constructor cannot be called as a function..
PASS createdFoo.__proto__ is fooConstructor.prototype
PASS createdFoo.constructor is fooConstructor
PASS createdFoo.tagName is 'X-FOO'
PASS createdFoo.textContent is 'Hello'
PASS createdFoo.lastChild is childDiv
PASS parsedFoo.__proto__ is fooConstructor.prototype
PASS parsedFoo.tagName is 'X-FOO'
PASS parsedFoo.someProperty is container.firstChild.someProperty
PASS barConstructor !== fooConstructor is true
PASS createdBar.tagName is 'X-BAR'
PASS createdBaz.tagName is 'X-BAZ'
PASS createdBaz.thisIsPrototype is true
PASS createdBaz.thisIsAlsoPrototype is true
PASS createdUpperBar.constructor is barConstructor
PASS createdUpperBar.tagName is 'X-BAR'
PASS createdMixedBar.constructor is barConstructor
PASS createdMixedBar.tagName is 'X-BAR'
PASS container.firstChild.constructor is barConstructor
PASS container.firstChild.tagName is 'X-BAR'
PASS container.lastChild.constructor is barConstructor
PASS container.lastChild.tagName is 'X-BAR'
PASS (new (document.register('y-bar', createRegisterParamters()))()).tagName is 'Y-BAR'
PASS (new (document.register('yz-bar', createRegisterParamters()))()).tagName is 'YZ-BAR'
PASS (new (document.register('y-z-bar', createRegisterParamters()))()).tagName is 'Y-Z-BAR'
PASS (new (document.register('y--bar', createRegisterParamters()))()).tagName is 'Y--BAR'
PASS (new fooConstructor).tagName is 'X-FOO'
PASS (new barConstructor).tagName is 'X-BAR'
PASS (new bazConstructor).tagName is 'X-BAZ'
PASS successfullyParsed is true

TEST COMPLETE

