[infinispan-commits] Infinispan SVN: r2193 - in trunk/tree/src/test/java/org/infinispan: loaders and 1 other directory.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Wed Aug 11 07:47:03 EDT 2010
Author: manik.surtani at jboss.com
Date: 2010-08-11 07:47:02 -0400 (Wed, 11 Aug 2010)
New Revision: 2193
Added:
trunk/tree/src/test/java/org/infinispan/loaders/
trunk/tree/src/test/java/org/infinispan/loaders/TreeCacheWithLoaderTest.java
Log:
Added test to ensure tree nodes and data are being persisted
Added: trunk/tree/src/test/java/org/infinispan/loaders/TreeCacheWithLoaderTest.java
===================================================================
--- trunk/tree/src/test/java/org/infinispan/loaders/TreeCacheWithLoaderTest.java (rev 0)
+++ trunk/tree/src/test/java/org/infinispan/loaders/TreeCacheWithLoaderTest.java 2010-08-11 11:47:02 UTC (rev 2193)
@@ -0,0 +1,65 @@
+package org.infinispan.loaders;
+
+import org.infinispan.config.CacheLoaderManagerConfig;
+import org.infinispan.config.Configuration;
+import org.infinispan.loaders.dummy.DummyInMemoryCacheStore;
+import org.infinispan.manager.EmbeddedCacheManager;
+import org.infinispan.test.SingleCacheManagerTest;
+import org.infinispan.test.TestingUtil;
+import org.infinispan.test.fwk.TestCacheManagerFactory;
+import org.infinispan.tree.Fqn;
+import org.infinispan.tree.NodeKey;
+import org.infinispan.tree.TreeCache;
+import org.infinispan.tree.TreeCacheImpl;
+import org.testng.annotations.Test;
+
+ at Test(groups = "functional", testName = "loaders.TreeCacheWithLoaderTest")
+public class TreeCacheWithLoaderTest extends SingleCacheManagerTest {
+
+ TreeCache<String, String> cache;
+ CacheStore store;
+
+ @Override
+ protected EmbeddedCacheManager createCacheManager() throws Exception {
+ // start a single cache instance
+ Configuration c = getDefaultStandaloneConfig(true);
+ c.setInvocationBatchingEnabled(true);
+ CacheLoaderManagerConfig clmc = new CacheLoaderManagerConfig();
+ clmc.addCacheLoaderConfig(new DummyInMemoryCacheStore.Cfg());
+ c.setCacheLoaderManagerConfig(clmc);
+ EmbeddedCacheManager cm = TestCacheManagerFactory.createCacheManager(c, true);
+ cache = new TreeCacheImpl<String, String>(cm.getCache());
+ CacheLoaderManager m = TestingUtil.extractComponent(cache.getCache(), CacheLoaderManager.class);
+ store = m.getCacheStore();
+ return cm;
+ }
+
+ public void testPersistence() throws CacheLoaderException {
+ cache.put("/a/b/c", "key", "value");
+ assert "value".equals(cache.get("/a/b/c", "key"));
+
+ assert store.containsKey(new NodeKey(Fqn.fromString("/a/b/c"), NodeKey.Type.DATA));
+ assert store.containsKey(new NodeKey(Fqn.fromString("/a/b/c"), NodeKey.Type.STRUCTURE));
+
+ cache.stop();
+ cache.start();
+ assert "value".equals(cache.get("/a/b/c", "key"));
+ assert store.containsKey(new NodeKey(Fqn.fromString("/a/b/c"), NodeKey.Type.DATA));
+ assert store.containsKey(new NodeKey(Fqn.fromString("/a/b/c"), NodeKey.Type.STRUCTURE));
+ }
+
+ public void testRootNodePersistence() throws CacheLoaderException {
+ cache.put(Fqn.ROOT, "key", "value");
+ assert "value".equals(cache.get(Fqn.ROOT, "key"));
+ assert store.containsKey(new NodeKey(Fqn.ROOT, NodeKey.Type.DATA));
+ assert store.containsKey(new NodeKey(Fqn.ROOT, NodeKey.Type.STRUCTURE));
+
+ cache.stop();
+ cache.start();
+ assert "value".equals(cache.get(Fqn.ROOT, "key"));
+
+ assert store.containsKey(new NodeKey(Fqn.ROOT, NodeKey.Type.DATA));
+ assert store.containsKey(new NodeKey(Fqn.ROOT, NodeKey.Type.STRUCTURE));
+ }
+
+}
More information about the infinispan-commits
mailing list