/* * Copyright 1999-2004 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ package org.apache.xindice.xml.dom; import org.w3c.dom.Node; import org.w3c.dom.Document; import junit.framework.TestCase; public abstract class AbstractDOMTest extends TestCase { protected Document doc; protected Node root; protected static DOMTestConfig config; public static void setConfig(DOMTestConfig config) { AbstractDOMTest.config = config; } public void setUp() throws Exception { config.setXML(getXml()); config.setUp(); doc = config.getDoc(); root = config.getRoot(); super.setUp(); } public void tearDown() throws Exception { config.tearDown(); super.tearDown(); } public abstract String getXml(); public static abstract class DOMTestConfig { protected Document doc; protected Node root; protected String xml; public abstract void setUp() throws Exception; public abstract void tearDown() throws Exception; public void setXML(String xml) { this.xml = xml; } public Document getDoc() { return doc; } public Node getRoot() { return root; } } }