1 8 package test.xmldb.levelzero; 9 10 import test.xmldb.*; 11 import junit.framework.*; 12 13 import org.xmldb.api.modules.XMLResource; 14 15 import org.w3c.dom.Node ; 16 import org.w3c.dom.NodeList ; 17 import org.w3c.dom.Document ; 18 import org.w3c.dom.Element ; 19 import org.w3c.dom.Text ; 20 import org.apache.log4j.Logger; 21 24 public class DOMTest extends XMLDBTestCase implements LevelZeroTestConstants { 25 26 private Logger logger = Logger.getLogger(DOMTest.class); 27 28 29 public DOMTest(String name) { 30 super(name); 31 } 32 33 public static Test suite() { 34 return new TestSuite(DOMTest.class); 35 } 36 37 40 public void testDOM() { 41 try { 42 logger.debug("\nLevelZeroTest.testDOM() - started\n"); 43 insertDOMDocument(id, super.document); 44 Node node = retrieveDOMNode(id); 45 super.assertNotNull("LevelZeroTest.testDOM()", node); 46 47 insertDOMDocument(id2, document); 48 Node node2 = retrieveDOMNode(id2); 49 super.assertNotNull("LevelZeroTest.testDOM()", node2); 50 51 54 logger.debug("DOMTest.testDOM() - updateDOMDocument() is uncommented!"); 55 node = retrieveDOMNode(id); 57 super.assertNotNull("LevelZeroTest.testDOM()", node); 58 59 } catch (Exception e) { 60 fail( e.getMessage( ) ); 61 } 62 } 63 64 private void insertDOMDocument(String id, Document document) throws Exception { 65 66 XMLResource resource = (XMLResource) col.createResource(id, XMLResource.RESOURCE_TYPE); 67 68 resource.setContentAsDOM(document); 69 col.storeResource(resource); 70 71 } 72 73 private void updateDOMDocument(String id) throws Exception { 74 try { 75 XMLResource resource = (XMLResource) col.getResource(id); 76 77 Document document = (Document ) resource.getContentAsDOM(); 78 logger.debug("LevelZeroTest.updateDOMDocument() - " + document); 79 assertNotNull("LevelZeroTest.updateDOMDocument()", document); 80 Element root = document.getDocumentElement(); 81 83 Text nameNode = document.createTextNode("updateAddition"); 84 NodeList list = root.getElementsByTagName("testName"); 85 Node parent = list.item(0); 86 parent.appendChild(nameNode); 87 88 list = root.getElementsByTagName("levelZeroTests"); 90 Node levelZeroTests = list.item(0); 91 Element testName = document.createElement("testName"); 92 levelZeroTests.appendChild(testName); 93 Node name = document.createTextNode("testSAX"); 94 testName.appendChild(name); 95 96 resource.setContentAsDOM(document); 97 col.storeResource(resource); 98 super.assertEquals(document, resource.getContentAsDOM()); 99 } 100 catch (Exception e) { 101 e.printStackTrace(); 102 throw e; 103 } 104 } 105 106 private Node retrieveDOMNode(String id) throws Exception { 107 XMLResource resource = 108 (XMLResource) col.getResource(id); 109 110 Node node = resource.getContentAsDOM(); 111 return node; 112 113 } 114 115 private void retrieveDOMDocument(String id) throws Exception { 116 XMLResource resource = 117 (XMLResource) col.getResource(id); 118 119 Document doc = (Document ) resource.getContentAsDOM(); 120 } 121 122 123 } 124 | Popular Tags |