
PASS Should check the 'parent' type before checking whether 'child' is a child of 'parent' 
PASS Should check that 'node' is not an ancestor of 'parent' before checking whether 'child' is a child of 'parent' 
PASS Should check whether 'child' is a child of 'parent' before checking whether 'node' is of a type that can have a parent. 
PASS Should check whether 'child' is a child of 'parent' before checking whether 'node' is of a type that can have a parent of the type that 'parent' is. 
PASS Should check whether 'child' is a child of 'parent' before checking whether 'node' can be inserted into the document given the kids the document has right now. 
PASS Calling insertBefore with a non-Node first argument must throw TypeError. 
PASS Calling insertBefore with a non-Node first argument on a leaf node DocumentType must throw TypeError. 
PASS Calling insertBefore an a leaf node DocumentType must throw HIERARCHY_REQUEST_ERR. 
PASS Calling insertBefore with a non-Node first argument on a leaf node Text must throw TypeError. 
PASS Calling insertBefore an a leaf node Text must throw HIERARCHY_REQUEST_ERR. 
PASS Calling insertBefore with a non-Node first argument on a leaf node Comment must throw TypeError. 
PASS Calling insertBefore an a leaf node Comment must throw HIERARCHY_REQUEST_ERR. 
PASS Calling insertBefore with a non-Node first argument on a leaf node ProcessingInstruction must throw TypeError. 
PASS Calling insertBefore an a leaf node ProcessingInstruction must throw HIERARCHY_REQUEST_ERR. 
PASS Calling insertBefore with an inclusive ancestor of the context object must throw HIERARCHY_REQUEST_ERR. 
PASS Calling insertBefore with a reference child whose parent is not the context node must throw a NotFoundError. 
PASS If the context node is a document, inserting a document or text node should throw a HierarchyRequestError. 
PASS If the context node is a document, appending a DocumentFragment that contains a text node or too many elements should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting a DocumentFragment that contains a text node or too many elements should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting a DocumentFragment with an element if there already is an element child should throw a HierarchyRequestError. 
PASS If the context node is a document and a doctype is following the reference child, inserting a DocumentFragment with an element should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting a DocumentFragment with an element before the doctype should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting an element if there already is an element child should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting an element before the doctype should throw a HierarchyRequestError. 
PASS If the context node is a document and a doctype is following the reference child, inserting an element should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting a doctype if there already is a doctype child should throw a HierarchyRequestError. 
PASS If the context node is a document, inserting a doctype after the document element should throw a HierarchyRequestError. 
PASS If the context node is a document with and element child, appending a doctype should throw a HierarchyRequestError. 
PASS If the context node is a DocumentFragment, inserting a document or a doctype should throw a HierarchyRequestError. 
PASS If the context node is an element, inserting a document or a doctype should throw a HierarchyRequestError. 
PASS Inserting a node before itself should not move the node 

