FileDocCategorySizeDatePackage
hc_nodeinsertbefore.javaAPI DocAndroid 1.5 API4188Wed May 06 22:41:04 BST 2009org.w3c.domts.level1.core

hc_nodeinsertbefore

public final class hc_nodeinsertbefore extends org.w3c.domts.DOMTestCase
The "insertBefore(newChild,refChild)" method inserts the node "newChild" before the node "refChild". Insert a newly created Element node before the second sup element in the document and check the "newChild" and "refChild" after insertion for correct placement.
author
Curt Arnold
see
http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
see
http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
see
http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
see
http://www.w3.org/Bugs/Public/show_bug.cgi?id=261

Fields Summary
Constructors Summary
public hc_nodeinsertbefore(org.w3c.domts.DOMTestDocumentBuilderFactory factory)
Constructor.

param
factory document factory, may not be null
throws
org.w3c.domts.DOMTestIncompatibleException Thrown if test is not compatible with parser configuration

      super(factory);

    //
    //   check if loaded documents are supported for content type
    //
    String contentType = getContentType();
    preload(contentType, "hc_staff", true);
    
Methods Summary
public java.lang.StringgetTargetURI()
Gets URI that identifies the test.

return
uri identifier of test

      return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbefore";
   
public static voidmain(java.lang.String[] args)
Runs this test from the command line.

param
args command line arguments

        DOMTestCase.doMain(hc_nodeinsertbefore.class, args);
   
public voidrunTest()
Runs the test case.

throws
Throwable Any uncaught exception causes test to fail

      Document doc;
      NodeList elementList;
      Node employeeNode;
      NodeList childList;
      Node refChild;
      Node newChild;
      Node child;
      String childName;
      Node insertedNode;
      java.util.List actual = new java.util.ArrayList();
      
      java.util.List expected = new java.util.ArrayList();
      expected.add("em");
      expected.add("strong");
      expected.add("code");
      expected.add("br");
      expected.add("sup");
      expected.add("var");
      expected.add("acronym");
      
      int nodeType;
      doc = (Document) load("hc_staff", true);
      elementList = doc.getElementsByTagName("sup");
      refChild = elementList.item(2);
      employeeNode = refChild.getParentNode();
      childList = employeeNode.getChildNodes();
      newChild = doc.createElement("br");
      insertedNode = employeeNode.insertBefore(newChild, refChild);
      for (int indexN10091 = 0; indexN10091 < childList.getLength(); indexN10091++) {
          child = (Node) childList.item(indexN10091);
    nodeType = (int) child.getNodeType();
      
      if (equals(1, nodeType)) {
          childName = child.getNodeName();
      actual.add(childName);
      }
      }
      assertEqualsAutoCase("element", "nodeNames", expected, actual);