Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/util/XMLDiff.java')
-rw-r--r--tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/util/XMLDiff.java169
1 files changed, 0 insertions, 169 deletions
diff --git a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/util/XMLDiff.java b/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/util/XMLDiff.java
deleted file mode 100644
index 907a3306e..000000000
--- a/tests/org.eclipse.wst.wsdl.tests/src/org/eclipse/wst/wsdl/tests/util/XMLDiff.java
+++ /dev/null
@@ -1,169 +0,0 @@
-package org.eclipse.wst.wsdl.tests.util;
-
-import org.w3c.dom.*;
-import org.xml.sax.SAXException;
-
-import java.io.*;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-/**
- * @author Kihup Boo
- */
-public class XMLDiff
-{
- private PrintStream out = System.out;
- private boolean DIFF_ELEMENT_NODE_ONLY = false;
-
- public boolean diff(String file1, String file2) throws ParserConfigurationException, SAXException, IOException
- {
- return diff(file1,file2,false);
- }
-
- public boolean diff(String file1, String file2, boolean elementOnly) throws ParserConfigurationException, SAXException, IOException
- {
- Document doc1 = getDocument(file1);
- Document doc2 = getDocument(file2);
- DIFF_ELEMENT_NODE_ONLY = elementOnly;
- return diff(doc1,doc2);
- }
-
- public boolean diff(Document doc1, Document doc2)
- {
- Element root1 = doc1.getDocumentElement();
- Element root2 = doc2.getDocumentElement();
- return compareNodes(root1,root2);
- }
-
- private Document getDocument(String uri) throws ParserConfigurationException, SAXException, IOException
- {
- DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- Document doc = builder.parse(uri);
- return doc;
- }
-
- private boolean compareNodes(Node node1, Node node2)
- {
- if (DIFF_ELEMENT_NODE_ONLY)
- {
- // Compare only element nodes in the children.
- filterNonElementNodes(node1);
- filterNonElementNodes(node2);
- }
-
- if (node1.getNodeType() != node2.getNodeType()
- || node1.getNodeName() != node2.getNodeName())
- {
- println("Node type or node name is different:");
- println("Node 1: " + node1.getNodeName());
- println("Node 2: " + node2.getNodeName());
- return false;
- }
-
- if (!compareAttributes(node1,node2))
- return false;
-
- NodeList nodeList1 = node1.getChildNodes();
- NodeList nodeList2 = node2.getChildNodes();
- if (nodeList1.getLength() != nodeList2.getLength())
- {
- println("The number of children is different:");
- //println("Node 1: " + nodeList1.getLength());
- //println("Node 2: " + nodeList2.getLength());
- println("Node 1: " + node1.getNodeName());
- println("Node 2: " + node2.getNodeName());
- return false;
- }
-
- boolean result = true;
- int length = nodeList1.getLength();
- for (int i=0; i<length; i++)
- {
- result = compareNodes(nodeList1.item(i),nodeList2.item(i));
- if (!result)
- return false;
- }
- return true;
- }
-
- private void filterNonElementNodes(Node node)
- {
- Node firstChild = node.getFirstChild();
- while (firstChild.getNodeType() != Node.ELEMENT_NODE)
- {
- node.removeChild(firstChild);
- firstChild = node.getFirstChild();
- }
-
- Node sibling = firstChild.getNextSibling();
- Node deleteMe = null;
- while (sibling != null)
- {
- if (sibling.getNodeType() != Node.ELEMENT_NODE)
- {
- deleteMe = sibling;
- sibling = sibling.getNextSibling();
- node.removeChild(deleteMe);
- }
-
- }
- }
-
- private boolean compareAttributes(Node node1, Node node2)
- {
- NamedNodeMap nodeMap1 = node1.getAttributes();
- NamedNodeMap nodeMap2 = node2.getAttributes();
-
- if (nodeMap1 == null || nodeMap2 == null)
- {
- if (nodeMap1 == null && nodeMap2 == null)
- return true;
- else
- return false;
- }
-
- if (nodeMap1.getLength() != nodeMap2.getLength())
- {
- println("The number of attributes is different:");
- println("Node 1: " + node1.getNodeName());
- println("Node 2: " + node2.getNodeName());
- return false;
- }
-
- Node attrNode1 = null;
- Node attrNode2 = null;
- int length = nodeMap1.getLength();
- for (int i=0; i<length; i++)
- {
- attrNode1 = nodeMap1.item(i);
- attrNode2 = nodeMap2.getNamedItem(attrNode1.getNodeName());
- if (attrNode2 == null)
- {
- println("The attribute is not found in Node 2: " + attrNode1.getNodeName());
- println("Node 1: " + node1.getNodeName());
- println("Node 2: " + node2.getNodeName());
- return false;
- }
- else if (!attrNode1.getNodeValue().equals(attrNode2.getNodeValue()))
- {
- println("The attribute values are different:");
- println("Node 1: " + node1.getNodeName() + "," + attrNode1.getNodeValue());
- println("Node 2: " + node2.getNodeName() + "," + attrNode2.getNodeValue());
- return false;
- }
- }
- return true;
- }
-
- private void print(String s)
- {
- out.print(s);
- }
-
- private void println(String s)
- {
- out.println(s);
- }
-}

Back to the top