[infinispan-commits] Infinispan SVN: r1394 - in trunk/core/src/test/java/org/infinispan: loaders/file and 1 other directories.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Tue Jan 19 09:58:01 EST 2010


Author: manik.surtani at jboss.com
Date: 2010-01-19 09:58:01 -0500 (Tue, 19 Jan 2010)
New Revision: 1394

Modified:
   trunk/core/src/test/java/org/infinispan/loaders/BaseCacheStoreTest.java
   trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreFunctionalTest.java
   trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreTest.java
   trunk/core/src/test/java/org/infinispan/test/TestingUtil.java
Log:
Enhanced tests

Modified: trunk/core/src/test/java/org/infinispan/loaders/BaseCacheStoreTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/loaders/BaseCacheStoreTest.java	2010-01-19 14:33:47 UTC (rev 1393)
+++ trunk/core/src/test/java/org/infinispan/loaders/BaseCacheStoreTest.java	2010-01-19 14:58:01 UTC (rev 1394)
@@ -115,11 +115,11 @@
       InternalCacheEntry se = InternalEntryFactory.create("k", "v", lifespan);
       cs.store(se);
 
-      assert cs.load("k").getValue().equals("v");
-      assert cs.load("k").getLifespan() == lifespan;
-      assert cs.load("k").getMaxIdle() == -1;
-      assert !cs.load("k").isExpired();
       assert cs.containsKey("k");
+      InternalCacheEntry ice = cs.load("k");
+      assertCorrectExpiry(ice, "v", lifespan, -1, false);
+      ice = cs.loadAll().iterator().next();
+      assertCorrectExpiry(ice, "v", lifespan, -1, false);
 
       lifespan = 1;
       se = InternalEntryFactory.create("k", "v", lifespan);
@@ -129,8 +129,20 @@
       assert se.isExpired();
       assert cs.load("k") == null;
       assert !cs.containsKey("k");
+      assert cs.loadAll().isEmpty();
    }
 
+   private void assertCorrectExpiry(InternalCacheEntry ice, String value, long lifespan, long maxIdle, boolean expired) {
+      assert ice != null : "Cache entry is null";
+      assert Util.safeEquals(ice.getValue(), value) : ice.getValue() + " was not " + value;
+      assert ice.getLifespan() == lifespan : ice.getLifespan() + " was not " + lifespan;
+      assert ice.getMaxIdle() == maxIdle : ice.getMaxIdle() + " was not " + maxIdle;
+      if (lifespan > -1) assert ice.getCreated() > -1 : "Created is -1 when maxIdle is set";
+      if (maxIdle > -1) assert ice.getLastUsed() > -1 : "LastUsed is -1 when maxIdle is set";
+      assert expired == ice.isExpired() : "isExpired() is not " + expired;
+   }
+
+
    public void testLoadAndStoreWithIdle() throws InterruptedException, CacheLoaderException {
       assert !cs.containsKey("k");
 
@@ -138,11 +150,11 @@
       InternalCacheEntry se = InternalEntryFactory.create("k", "v", -1, idle);
       cs.store(se);
 
-      assert cs.load("k").getValue().equals("v");
-      assert cs.load("k").getLifespan() == -1;
-      assert cs.load("k").getMaxIdle() == idle;
-      assert !cs.load("k").isExpired();
       assert cs.containsKey("k");
+      InternalCacheEntry ice = cs.load("k");
+      assertCorrectExpiry(ice, "v", -1, idle, false);
+      ice = cs.loadAll().iterator().next();
+      assertCorrectExpiry(ice, "v", -1, idle, false);
 
       idle = 1;
       se = InternalEntryFactory.create("k", "v", -1, idle);
@@ -152,6 +164,7 @@
       assert se.isExpired();
       assert cs.load("k") == null;
       assert !cs.containsKey("k");
+      assert cs.loadAll().isEmpty();
    }
 
    public void testLoadAndStoreWithLifespanAndIdle() throws InterruptedException, CacheLoaderException {
@@ -162,11 +175,11 @@
       InternalCacheEntry se = InternalEntryFactory.create("k", "v", lifespan, idle);
       cs.store(se);
 
-      assert cs.load("k").getValue().equals("v");
-      assert cs.load("k").getLifespan() == lifespan;
-      assert cs.load("k").getMaxIdle() == idle;
-      assert !cs.load("k").isExpired();
       assert cs.containsKey("k");
+      InternalCacheEntry ice = cs.load("k");
+      assertCorrectExpiry(ice, "v", lifespan, idle, false);
+      ice = cs.loadAll().iterator().next();
+      assertCorrectExpiry(ice, "v", lifespan, idle, false);
 
       idle = 1;
       se = InternalEntryFactory.create("k", "v", lifespan, idle);
@@ -176,6 +189,7 @@
       assert se.isExpired();
       assert cs.load("k") == null;
       assert !cs.containsKey("k");
+      assert cs.loadAll().isEmpty();
    }
 
    public void testStopStartDoesntNukeValues() throws InterruptedException, CacheLoaderException {

Modified: trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreFunctionalTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreFunctionalTest.java	2010-01-19 14:33:47 UTC (rev 1393)
+++ trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreFunctionalTest.java	2010-01-19 14:58:01 UTC (rev 1394)
@@ -40,7 +40,7 @@
    @BeforeTest
    @Parameters({"basedir"})
    protected void setUpTempDir(@Optional(value = "/tmp") String basedir) {
-      tmpDirectory = basedir + TestingUtil.TEST_PATH + File.separator + getClass().getSimpleName();
+      tmpDirectory = TestingUtil.tmpDirectory(basedir, this);
    }
    
    @AfterClass

Modified: trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreTest.java	2010-01-19 14:33:47 UTC (rev 1393)
+++ trunk/core/src/test/java/org/infinispan/loaders/file/FileCacheStoreTest.java	2010-01-19 14:58:01 UTC (rev 1394)
@@ -33,7 +33,7 @@
    @BeforeTest
    @Parameters({"basedir"})
    protected void setUpTempDir(@Optional(value = "/tmp") String basedir) {
-      tmpDirectory = basedir + TestingUtil.TEST_PATH + File.separator + getClass().getSimpleName();
+      tmpDirectory = TestingUtil.tmpDirectory(basedir, this);      
    }
 
    @AfterClass

Modified: trunk/core/src/test/java/org/infinispan/test/TestingUtil.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/test/TestingUtil.java	2010-01-19 14:33:47 UTC (rev 1393)
+++ trunk/core/src/test/java/org/infinispan/test/TestingUtil.java	2010-01-19 14:58:01 UTC (rev 1394)
@@ -23,6 +23,7 @@
 import org.infinispan.lifecycle.ComponentStatus;
 import org.infinispan.loaders.CacheLoader;
 import org.infinispan.loaders.CacheLoaderManager;
+import org.infinispan.loaders.file.FileCacheStoreTest;
 import org.infinispan.manager.CacheManager;
 import org.infinispan.manager.DefaultCacheManager;
 import org.infinispan.remoting.ReplicationQueue;
@@ -45,11 +46,13 @@
 import java.util.Set;
 import java.util.concurrent.ConcurrentMap;
 
+import static java.io.File.separator;
+
 public class TestingUtil {
    
    private static final Log log = LogFactory.getLog(TestingUtil.class);
    private static final Random random = new Random();
-   public static final String TEST_PATH = "target" + File.separator + "tempFiles";
+   public static final String TEST_PATH = "target" + separator + "tempFiles";
 
    /**
     * Extracts the value of a field in a given target instance using reflection, able to extract private fields as
@@ -752,4 +755,19 @@
       }
       return values;
    }
+
+   /**
+    * Creates a path to a temp directory based on a base directory and a test.
+    * @param basedir may be null, if relative directories are to be used.
+    * @param test test that requires this directory.
+    * @return a path, relative or absolute.
+    */
+   public static String tmpDirectory(String basedir, AbstractInfinispanTest test) {
+      String prefix = "";
+      if (basedir != null) {
+         prefix = basedir;
+         if (!prefix.endsWith(separator)) prefix += separator;
+      }
+      return prefix + TEST_PATH + separator + test.getClass().getSimpleName();
+   }
 }



More information about the infinispan-commits mailing list