You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by ol...@apache.org on 2003/02/16 18:32:06 UTC
cvs commit: db-ojb/src/test/org/apache/ojb/odmg BatchModeTest.java AllTests.java
olegnitz 2003/02/16 09:32:05
Modified: src/test/org/apache/ojb/broker AllTests.java
src/test/org/apache/ojb/odmg AllTests.java
Added: src/test/org/apache/ojb/broker BatchModeTest.java
src/test/org/apache/ojb/odmg BatchModeTest.java
Log:
Added batch mode tests
Revision Changes Path
1.18 +17 -5 db-ojb/src/test/org/apache/ojb/broker/AllTests.java
Index: AllTests.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/broker/AllTests.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- AllTests.java 31 Jan 2003 17:50:05 -0000 1.17
+++ AllTests.java 16 Feb 2003 17:32:05 -0000 1.18
@@ -7,13 +7,22 @@
import org.apache.ojb.broker.metadata.RepositoryPersistorTest;
import org.apache.ojb.broker.sequence.SequenceManagerTest;
-/**
* the facade to all TestCases in this package.
*
* @author: Thomas Mahler
*/
+/**
+ * the facade to all TestCases in this package.
+ *
+ * @author: Thomas Mahler
+ */
public class AllTests extends junit.framework.TestSuite
{
- /** static reference to .class.
* Java does not provide any way to obtain the Class object from
* static method without naming it.
*/
+ /** static reference to .class.
+ * Java does not provide any way to obtain the Class object from
+ * static method without naming it.
+ */
private static Class CLASS = AllTests.class;
- /**
* runs the suite in a junit.textui.TestRunner.
*/
+ /**
+ * runs the suite in a junit.textui.TestRunner.
+ */
public static void main(String[] args)
{
String[] arr = {CLASS.getName()};
@@ -50,13 +59,16 @@
suite.addTest(new TestSuite(SequenceManagerTest.class));
suite.addTest(new TestSuite(ConvertedKeyReferenceTest.class));
suite.addTest(new TestSuite(KeyConstraintViolationTest.class));
- suite.addTest(new TestSuite(RsIteratorTest.class));
//suite.addTest(new TestSuite(BlobTest.class)); /* doesn't work for hsqldb */
suite.addTest(new TestSuite(LogServiceTest.class));
+ suite.addTest(new TestSuite(RsIteratorTest.class));
+ //suite.addTest(new TestSuite(BlobTest.class)); /* doesn't work for hsqldb */
+ suite.addTest(new TestSuite(LogServiceTest.class));
suite.addTest(new TestSuite(ManyToManyTest.class));
suite.addTest(new TestSuite(OneToOneTest.class));
suite.addTest(new TestSuite(MetaDataSerializationTest.class));
suite.addTest(new TestSuite(MetadataTest.class));
suite.addTest(new TestSuite(FieldConversionForeigenKeyTest.class));
+ suite.addTest(new TestSuite(BatchModeTest.class));
return suite;
}
-}
\ No newline at end of file
+}
1.1 db-ojb/src/test/org/apache/ojb/broker/BatchModeTest.java
Index: BatchModeTest.java
===================================================================
/*
* BatchModeTest.java
* JUnit based test
*
* Created on February 15, 2003, 12:47 AM
*/
package org.apache.ojb.broker;
import junit.framework.*;
import org.apache.ojb.broker.util.logging.LoggerFactory;
import org.apache.ojb.broker.accesslayer.ConnectionManagerIF;
import java.util.*;
/**
* @author Oleg Nitz
*/
public class BatchModeTest extends TestCase
{
PersistenceBroker broker;
public BatchModeTest(String testName)
{
super(testName);
}
public void setUp()
{
try
{
broker = PersistenceBrokerFactory.defaultPersistenceBroker();
}
catch (Throwable t)
{
LoggerFactory.getBootLogger().error("error getting broker", t);
}
}
public void tearDown()
{
try
{
broker.clearCache();
broker.close();
}
catch (Throwable t)
{
}
}
public static void main(String[] args)
{
junit.textui.TestRunner.run(suite());
}
public static Test suite()
{
TestSuite suite = new TestSuite(BatchModeTest.class);
return suite;
}
public void testBatchStatementsOrder()
{
ConnectionManagerIF conMan = broker.serviceConnectionManager();
boolean saveBatchMode = conMan.isBatchMode();
try
{
conMan.setBatchMode(true);
broker.beginTransaction();
ProductGroup pg1 = new ProductGroup();
pg1.setId(20001);
pg1.setName("BatchModeTest ProductGroup #1");
broker.store(pg1);
conMan.executeBatch();
Article a1 = new Article();
a1.setArticleId(20001);
a1.setArticleName("BatchModeTest Article #1");
a1.setProductGroup(pg1);
pg1.add(a1);
broker.store(a1);
ProductGroup pg2 = new ProductGroup();
pg2.setId(20002);
pg2.setName("BatchModeTest ProductGroup #2");
broker.store(pg2);
Article a2 = new Article();
a2.setArticleId(20002);
a2.setArticleName("BatchModeTest Article #2");
a2.setProductGroup(pg2);
pg2.add(a2);
broker.store(a2);
ProductGroup pg3 = new ProductGroup();
pg3.setId(20003);
pg3.setName("BatchModeTest ProductGroup #3");
broker.store(pg3);
Article a3 = new Article();
a3.setArticleId(20003);
a3.setArticleName("BatchModeTest Article #3");
a3.setProductGroup(pg3);
pg3.add(a3);
broker.store(a3);
conMan.executeBatch();
broker.delete(a1);
conMan.executeBatch();
broker.delete(pg1);
broker.delete(a2);
broker.delete(pg2);
broker.delete(a3);
broker.delete(pg3);
conMan.executeBatch();
}
finally
{
broker.commitTransaction();
conMan.setBatchMode(saveBatchMode);
}
}
}
1.11 +1 -0 db-ojb/src/test/org/apache/ojb/odmg/AllTests.java
Index: AllTests.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/AllTests.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- AllTests.java 15 Feb 2003 16:05:26 -0000 1.10
+++ AllTests.java 16 Feb 2003 17:32:05 -0000 1.11
@@ -53,6 +53,7 @@
suite.addTest(new TestSuite(OneToManyTest.class));
suite.addTest(new TestSuite(OQLOrOnForeignKeyTest.class));
suite.addTest(new TestSuite(FieldConversion_ForeigenKeyTest.class));
+ suite.addTest(new TestSuite(BatchModeTest.class));
//suite.addTest(new TestSuite(OdmgCollectionsTest.class));
suite.addTest(new TestSuite(PersonWithArrayTest.class));
return suite;
1.1 db-ojb/src/test/org/apache/ojb/odmg/BatchModeTest.java
Index: BatchModeTest.java
===================================================================
/*
* BatchModeTest.java
* JUnit based test
*
* Created on February 15, 2003, 12:47 AM
*/
package org.apache.ojb.odmg;
import junit.framework.*;
import java.util.*;
import org.odmg.Database;
import org.odmg.Implementation;
import org.odmg.ODMGException;
import org.odmg.Transaction;
import org.apache.ojb.broker.Article;
import org.apache.ojb.broker.ProductGroup;
import org.apache.ojb.broker.TestHelper;
/**
* @author Oleg Nitz
*/
public class BatchModeTest extends TestCase
{
public BatchModeTest(String testName)
{
super(testName);
}
public static void main(String[] args)
{
junit.textui.TestRunner.run(new TestSuite(BatchModeTest.class));
}
public void testBatchStatementsOrder()
{
Implementation odmg = OJB.getInstance();
Database db = odmg.newDatabase();
//open database
try
{
db.open(TestHelper.DEF_DATABASE_NAME, Database.OPEN_READ_WRITE);
}
catch (ODMGException ex)
{
fail("ODMGException: " + ex.getMessage());
}
Transaction tx = odmg.newTransaction();
try
{
tx.begin();
ProductGroup pg1 = new ProductGroup();
pg1.setId(20001);
pg1.setName("BatchModeTest ProductGroup #1");
db.makePersistent(pg1);
tx.checkpoint();
Article a1 = Article.createInstance();
a1.setArticleId(20001);
a1.setArticleName("BatchModeTest Article #1");
a1.setProductGroup(pg1);
pg1.add(a1);
db.makePersistent(a1);
ProductGroup pg2 = new ProductGroup();
pg2.setId(20002);
pg2.setName("BatchModeTest ProductGroup #2");
db.makePersistent(pg2);
Article a2 = Article.createInstance();
a2.setArticleId(20002);
a2.setArticleName("BatchModeTest Article #2");
a2.setProductGroup(pg2);
pg2.add(a2);
tx.checkpoint();
db.deletePersistent(a1);
tx.checkpoint();
db.deletePersistent(pg1);
db.deletePersistent(a2);
db.deletePersistent(pg2);
tx.checkpoint();
}
finally
{
try
{
tx.commit();
}
catch (Exception ex)
{
}
try
{
db.close();
}
catch (ODMGException ex)
{
fail("ODMGException: " + ex.getMessage());
}
}
}
}