[exo-jcr-commits] exo-jcr SVN: r811 - jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache.
do-not-reply at jboss.org
do-not-reply at jboss.org
Mon Nov 23 09:43:39 EST 2009
Author: areshetnyak
Date: 2009-11-23 09:43:39 -0500 (Mon, 23 Nov 2009)
New Revision: 811
Modified:
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JBossCacheStorageConnectionLockTest.java
Log:
EXOJCR-203 : To JBossCacheStorageConnectionLockTest was added use case with cache restart.
Modified: jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JBossCacheStorageConnectionLockTest.java
===================================================================
--- jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JBossCacheStorageConnectionLockTest.java 2009-11-23 14:29:49 UTC (rev 810)
+++ jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JBossCacheStorageConnectionLockTest.java 2009-11-23 14:43:39 UTC (rev 811)
@@ -18,7 +18,14 @@
*/
package org.exoplatform.services.jcr.impl.storage.jbosscache;
+import org.exoplatform.services.jcr.access.AccessControlList;
+import org.exoplatform.services.jcr.datamodel.InternalQName;
+import org.exoplatform.services.jcr.datamodel.PropertyData;
+import org.exoplatform.services.jcr.datamodel.QPath;
+import org.exoplatform.services.jcr.impl.Constants;
import org.exoplatform.services.jcr.impl.core.lock.LockData;
+import org.exoplatform.services.jcr.impl.dataflow.TransientNodeData;
+import org.exoplatform.services.jcr.util.IdGenerator;
import java.util.List;
@@ -99,4 +106,39 @@
locks = conn.getLocksData();
assertEquals(count, locks.size());
}
+
+ public void testCheckLockAfterRestart() throws Exception
+ {
+ // add root (/)
+ initJCRRoot();
+
+ // add node (/node)
+ String node1id = IdGenerator.generate();
+ QPath node1path = QPath.parse("[]:1[]node:1");
+ conn.add(new TransientNodeData(node1path, node1id, 1, Constants.NT_UNSTRUCTURED, new InternalQName[0], 0,
+ Constants.ROOT_UUID, new AccessControlList()));
+
+ PropertyData primaryType =
+ createProperty(node1path, node1id, Constants.JCR_PRIMARYTYPE, Constants.NT_UNSTRUCTURED, false);
+ conn.add(primaryType);
+ conn.commit();
+
+ // add lock to node '/node'
+ LockData lockData = new LockData(node1id, "token's hash", true, false, "owner", 10000);
+ conn.addLockData(lockData);
+ assertEquals(lockData.getTokenHash(), conn.getLockData(node1id).getTokenHash());
+
+ // stop cache
+ cache.stop();
+ cache.destroy();
+
+ // start cache
+ super.setUp();
+
+ // check
+ // after restart the lock should be removed.
+ //TODO should be removed fail after created locks persistent.
+ fail("This fail should be removed after created locks persistent.");
+ assertNull(conn.getLockData(node1id));
+ }
}
More information about the exo-jcr-commits
mailing list