FileDocCategorySizeDatePackage
elementsetattributenodens04.javaAPI DocAndroid 1.5 API3673Wed May 06 22:41:04 BST 2009org.w3c.domts.level2.core

elementsetattributenodens04

public final class elementsetattributenodens04 extends org.w3c.domts.DOMTestCase
The method setAttributeNodeNS Adds a new attribute and raises an INUSE_ATTRIBUTE_ERR if newAttr is already an attribute of another Element object. Create two new element nodes and a new attribute node. Attempt to add the same attribute node to the same two element nodes. Check if an INUSE_ATTRIBUTE_ERR is thrown.
author
IBM
author
Neil Delima
see
http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS

Fields Summary
Constructors Summary
public elementsetattributenodens04(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


      org.w3c.domts.DocumentBuilderSetting[] settings = 
          new org.w3c.domts.DocumentBuilderSetting[] {
org.w3c.domts.DocumentBuilderSetting.namespaceAware
        };
        DOMTestDocumentBuilderFactory testFactory = factory.newInstance(settings);
        setFactory(testFactory);

    //
    //   check if loaded documents are supported for content type
    //
    String contentType = getContentType();
    preload(contentType, "staffNS", 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/level2/core/elementsetattributenodens04";
   
public static voidmain(java.lang.String[] args)
Runs this test from the command line.

param
args command line arguments

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

throws
Throwable Any uncaught exception causes test to fail

      Document doc;
      Element element1;
      Element element2;
      Attr attribute;
      Attr newAttribute;
      doc = (Document) load("staffNS", true);
      element1 = doc.createElementNS("http://www.w3.org/DOM/Test", "elem1");
      element2 = doc.createElementNS("http://www.w3.org/DOM/Test", "elem2");
      attribute = doc.createAttributeNS("http://www.w3.org/DOM/Test", "attr");
      newAttribute = element1.setAttributeNodeNS(attribute);
      
      {
         boolean success = false;
         try {
            newAttribute = element2.setAttributeNodeNS(attribute);
          } catch (DOMException ex) {
            success = (ex.code == DOMException.INUSE_ATTRIBUTE_ERR);
         }
         assertTrue("elementsetattributenodens04", success);
      }