001: /*
002: * Copyright 2006 Le Duc Bao, Ralf Joachim
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License"); you may not
005: * use this file except in compliance with the License. You may obtain a copy of
006: * the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
012: * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
013: * License for the specific language governing permissions and limitations under
014: * the License.
015: */
016: package org.castor.ddlgen.engine.oracle;
017:
018: import junit.framework.Test;
019: import junit.framework.TestSuite;
020:
021: import org.castor.ddlgen.DDLGenConfiguration;
022: import org.castor.ddlgen.KeyGeneratorRegistry;
023: import org.castor.ddlgen.test.framework.AbstractGeneratorTest;
024: import org.castor.ddlgen.test.framework.Expected;
025:
026: /**
027: * Oracle generator test.
028: *
029: * @author <a href="mailto:leducbao AT gmail DOT com">Le Duc Bao</a>
030: * @author <a href="mailto:ralf DOT joachim AT syscon DOT eu">Ralf Joachim</a>
031: * @version $Revision: 5951 $ $Date: 2006-04-25 16:09:10 -0600 (Tue, 25 Apr 2006) $
032: * @since 1.1
033: */
034: public final class OracleGeneratorTest extends AbstractGeneratorTest {
035: public OracleGeneratorTest(final String testcase) {
036: super (testcase);
037: }
038:
039: public OracleGeneratorTest(final String testcase,
040: final boolean useDBEngine) {
041: super (testcase);
042:
043: if (useDBEngine) {
044: setEngine(Expected.ENGINE_ORACLE);
045: }
046: }
047:
048: public static Test suite() throws Exception {
049: TestSuite suite = new TestSuite(
050: "All org.castor.ddlgen.engine.oracle tests");
051:
052: // schema test
053: suite
054: .addTest(new OracleGeneratorTest("testCreateSchema",
055: true));
056:
057: // drop test
058: suite.addTest(new OracleGeneratorTest("testDropTable", false));
059:
060: // table test
061: suite
062: .addTest(new OracleGeneratorTest("testSingleTable",
063: false));
064: suite.addTest(new OracleGeneratorTest("testMultipleTable",
065: false));
066: suite
067: .addTest(new OracleGeneratorTest("testIgnoredTable",
068: false));
069: suite.addTest(new OracleGeneratorTest("testNoTable", false));
070:
071: //field test
072: suite
073: .addTest(new OracleGeneratorTest("testSingleField",
074: false));
075: suite.addTest(new OracleGeneratorTest("testSingleFieldForAll",
076: true));
077: suite
078: .addTest(new OracleGeneratorTest("testIgnoredField",
079: false));
080: suite.addTest(new OracleGeneratorTest("testNoField", false));
081: suite.addTest(new OracleGeneratorTest("testManyKeysReference",
082: false));
083: suite.addTest(new OracleGeneratorTest(
084: "testManyClassKeysReference", false));
085: suite.addTest(new OracleGeneratorTest("test2LevelsReference",
086: false));
087:
088: // primary key test
089: suite.addTest(new OracleGeneratorTest("testClassId", false));
090: suite.addTest(new OracleGeneratorTest("testClassMultipleId",
091: false));
092: suite.addTest(new OracleGeneratorTest("testFieldId", false));
093: suite.addTest(new OracleGeneratorTest("testFieldMultipleId",
094: false));
095: suite.addTest(new OracleGeneratorTest("testOverwriteFieldId",
096: false));
097: suite.addTest(new OracleGeneratorTest("testNoId", false));
098:
099: // foreign key test
100: suite.addTest(new OracleGeneratorTest("testOneOneRelationship",
101: false));
102: suite.addTest(new OracleGeneratorTest(
103: "testOneManyRelationship", false));
104: suite.addTest(new OracleGeneratorTest(
105: "testManyManyRelationship", false));
106:
107: // index test
108: suite
109: .addTest(new OracleGeneratorTest("testCreateIndex",
110: false));
111:
112: // key generator test
113: suite.addTest(new OracleGeneratorTest("testKeyGenHighLow",
114: false));
115: suite.addTest(new OracleGeneratorTest("testKeyGenMax", false));
116: suite.addTest(new OracleGeneratorTest("testKeyGenSequence",
117: true));
118: suite.addTest(new OracleGeneratorTest("testKeyGenUUID", false));
119:
120: return suite;
121: }
122:
123: /**
124: * {@inheritDoc}
125: */
126: protected void setUp() throws Exception {
127: super .setUp();
128:
129: DDLGenConfiguration conf = new DDLGenConfiguration();
130: conf
131: .addProperties("org/castor/ddlgen/test/config/ddlgen.properties");
132: conf
133: .addProperties("org/castor/ddlgen/test/config/oracle.properties");
134: setGenerator(new OracleGenerator(conf));
135:
136: KeyGeneratorRegistry keyGenRegistry = new KeyGeneratorRegistry(
137: conf);
138: getGenerator().setKeyGenRegistry(keyGenRegistry);
139:
140: getGenerator().initialize();
141: }
142:
143: /**
144: * {@inheritDoc}
145: */
146: protected void tearDown() throws Exception {
147: super.tearDown();
148:
149: setGenerator(null);
150: }
151: }
|