Testing the LayoutNode.parent property.

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


Checking nodes have a null parent by default
PASS a.parent === null is true
PASS b.parent === null is true
PASS c.parent === null is true
PASS d.parent === null is true

node.children = [a, b, c]
PASS a.parent === node is true
PASS b.parent === node is true
PASS c.parent === node is true

a.remove()
PASS a.parent === null is true

node.removeChild(b)
PASS b.parent === null is true

node.addChild(a)
PASS a.parent === node is true

node.insertBefore(b, c)
PASS b.parent === node is true

node.insertAfter(d, c)
PASS d.parent === node is true

node.children = []
PASS a.parent === null is true
PASS b.parent === null is true
PASS c.parent === null is true
PASS d.parent === null is true
PASS successfullyParsed is true

TEST COMPLETE

