1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/*
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Copyright (c) 2003 World Wide Web Consortium, (Massachusetts Institute
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * of Technology, Institut National de Recherche en Informatique et en
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Automatique, Keio University). All Rights Reserved. This program is
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * distributed under the W3C's Software Intellectual Property License. This
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * program is distributed in the hope that it will be useful, but WITHOUT ANY
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * FOR A PARTICULAR PURPOSE. See W3C License
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * http://www.w3.org/Consortium/Legal/ for more details.
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage org.w3c.domts.level3.ls;
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.lang.reflect.Constructor;
15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport javax.xml.parsers.DocumentBuilderFactory;
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport junit.framework.TestSuite;
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.DOMTestDocumentBuilderFactory;
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.DOMTestSuite;
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.JAXPDOMTestDocumentBuilderFactory;
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.JUnitTestSuiteAdapter;
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * A JUnit test suite that will run all Load and Save tests
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * using the Oracle XML Parser for Java
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author Curt Arnold
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class TestOracle extends TestSuite {
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	/**
35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 * Constructs the test suite
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 *
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 * @return test suite
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 * @throws Exception can throw class load exceptions
39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 * if class path does not contain dom3-ls.jar or
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 * xmlparserv2.jar
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	 */
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	public static TestSuite suite() throws Exception {
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		Class testClass =
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project			ClassLoader.getSystemClassLoader().loadClass(
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				"org.w3c.domts.level3.ls.alltests");
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		Constructor testConstructor =
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project			testClass.getConstructor(
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				new Class[] { DOMTestDocumentBuilderFactory.class });
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		DocumentBuilderFactory jxFactory =
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project			(DocumentBuilderFactory) ClassLoader
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				.getSystemClassLoader()
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				.loadClass("oracle.xml.jaxp.JXDocumentBuilderFactory")
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				.newInstance();
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		DOMTestDocumentBuilderFactory factory =
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project			new JAXPDOMTestDocumentBuilderFactory(
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				jxFactory,
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project				JAXPDOMTestDocumentBuilderFactory.getConfiguration1());
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		Object test = testConstructor.newInstance(new Object[] { factory });
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project		return new JUnitTestSuiteAdapter((DOMTestSuite) test);
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project	}
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
67