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 ar...@apache.org on 2004/11/15 19:02:51 UTC
cvs commit: db-ojb/src/test/org/apache/ojb/odmg LockTestCommitedReads.java LockTestRepeatableReads.java LockTestSerializable.java LockTestUncommitedReads.java PersonWithArrayTest.java
arminw 2004/11/15 10:02:51
Modified: src/test/org/apache/ojb/odmg LockTestCommitedReads.java
LockTestRepeatableReads.java
LockTestSerializable.java
LockTestUncommitedReads.java
PersonWithArrayTest.java
Log:
merge with 1.0.x branch
add locking test, remove trz catch block in test
Revision Changes Path
1.11 +22 -0 db-ojb/src/test/org/apache/ojb/odmg/LockTestCommitedReads.java
Index: LockTestCommitedReads.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/LockTestCommitedReads.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- LockTestCommitedReads.java 14 Nov 2004 09:42:54 -0000 1.10
+++ LockTestCommitedReads.java 15 Nov 2004 18:02:51 -0000 1.11
@@ -82,6 +82,28 @@
}
+ /**
+ * Test 19
+ */
+ public void testWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
+ * Test 20
+ */
+ public void testReadWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.readLock(tx2, obj));
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
/**
* Test 1
1.11 +23 -0 db-ojb/src/test/org/apache/ojb/odmg/LockTestRepeatableReads.java
Index: LockTestRepeatableReads.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/LockTestRepeatableReads.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- LockTestRepeatableReads.java 14 Nov 2004 09:42:54 -0000 1.10
+++ LockTestRepeatableReads.java 15 Nov 2004 18:02:51 -0000 1.11
@@ -83,6 +83,29 @@
}
/**
+ * Test 19
+ */
+ public void testWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
+ * Test 20
+ */
+ public void testReadWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.readLock(tx2, obj));
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
* Test 1
*/
public void testSingleReadLock()
1.12 +23 -0 db-ojb/src/test/org/apache/ojb/odmg/LockTestSerializable.java
Index: LockTestSerializable.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/LockTestSerializable.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- LockTestSerializable.java 14 Nov 2004 09:42:54 -0000 1.11
+++ LockTestSerializable.java 15 Nov 2004 18:02:51 -0000 1.12
@@ -83,6 +83,29 @@
}
/**
+ * Test 19
+ */
+ public void testWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
+ * Test 20
+ */
+ public void testReadWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.readLock(tx2, obj));
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
* Test 1
*/
public void testSingleReadLock()
1.12 +23 -0 db-ojb/src/test/org/apache/ojb/odmg/LockTestUncommitedReads.java
Index: LockTestUncommitedReads.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/LockTestUncommitedReads.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- LockTestUncommitedReads.java 14 Nov 2004 09:42:54 -0000 1.11
+++ LockTestUncommitedReads.java 15 Nov 2004 18:02:51 -0000 1.12
@@ -83,6 +83,29 @@
}
/**
+ * Test 19
+ */
+ public void testWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
+ * Test 20
+ */
+ public void testReadWriteReleaseCheckRead()
+ {
+ assertTrue(lockManager.readLock(tx2, obj));
+ assertTrue(lockManager.writeLock(tx2, obj));
+ assertTrue(lockManager.checkRead(tx2, obj));
+ assertTrue(lockManager.releaseLock(tx2, obj));
+ assertFalse(lockManager.checkRead(tx2, obj));
+ }
+
+ /**
* Test 1
*/
public void testSingleReadLock()
1.7 +17 -4 db-ojb/src/test/org/apache/ojb/odmg/PersonWithArrayTest.java
Index: PersonWithArrayTest.java
===================================================================
RCS file: /home/cvs/db-ojb/src/test/org/apache/ojb/odmg/PersonWithArrayTest.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- PersonWithArrayTest.java 22 Jun 2004 18:16:22 -0000 1.6
+++ PersonWithArrayTest.java 15 Nov 2004 18:02:51 -0000 1.7
@@ -7,6 +7,7 @@
import java.util.Arrays;
import java.util.Collection;
+import java.util.ArrayList;
import org.apache.ojb.junit.ODMGTestCase;
import org.apache.ojb.odmg.shared.PersonImpl;
@@ -207,10 +208,11 @@
String firstnameFather = "Father" + postfix;
String firstnameChild_1 = "Child_One" + postfix;
String firstnameChild_2 = "Child_Two" + postfix;
+ String lastname = "testStoreThreePersons_3" + postfix;
- Person father = createPerson(firstnameFather, "testStoreThreePersons_3", null, null);
- Person child_1 = createPerson(firstnameChild_1, "testStoreThreePersons_3", null, null);
- Person child_2 = createPerson(firstnameChild_2, "testStoreThreePersons_3", null, null);
+ Person father = createPerson(firstnameFather, lastname, null, null);
+ Person child_1 = createPerson(firstnameChild_1, lastname, null, null);
+ Person child_2 = createPerson(firstnameChild_2, lastname, null, null);
Person[] children = new Person[]{child_1, child_2};
father.setChildren(children);
@@ -234,14 +236,25 @@
father.setChildren(null);
father.setFirstname(null);
+ tx = odmg.newTransaction();
tx.begin();
// make sure all objects are retrieved freshly in subsequent transactions
((TransactionImpl) tx).getBroker().clearCache();
+
OQLQuery qry = odmg.newOQLQuery();
+ qry.create("select a from " + PersonImpl.class.getName() + " where lastname=$1");
+ qry.bind(lastname);
+ Collection result = (Collection) qry.execute();
+ assertEquals(3, new ArrayList(result).size());
+
+
+ qry = odmg.newOQLQuery();
qry.create("select a from " + PersonImpl.class.getName() + " where firstname=$1");
qry.bind(firstnameFather);
- Collection result = (Collection) qry.execute();
+ result = (Collection) qry.execute();
+ tx.commit();
+ tx.begin();
assertEquals("Exactly one element in result set", 1, result.size());
Person returnedFather = (Person) result.iterator().next();
// should retrieve new instance, cause we clear the cache
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org