package com.rubiconproject.oss.kv.test.backends; import com.rubiconproject.oss.kv.KeyValueStoreStatus; import com.rubiconproject.oss.kv.backends.CachingKeyValueStore; import com.rubiconproject.oss.kv.backends.ConcurrentHashMapKeyValueStore; import com.rubiconproject.oss.kv.backends.MemcachedKeyValueStore; import com.rubiconproject.oss.kv.test.KeyValueStoreBackendTestCase; public class CachingStoreTestCase extends KeyValueStoreBackendTestCase { public void testBackend() throws Exception { ConcurrentHashMapKeyValueStore master = new ConcurrentHashMapKeyValueStore(); master.start(); MemcachedKeyValueStore cache = new MemcachedKeyValueStore(); cache.setHosts("localhost:11211"); cache.start(); CachingKeyValueStore store = new CachingKeyValueStore(master, cache); doTestBackend(store); // set cache to offline - should still pass cache.setStatus(KeyValueStoreStatus.Offline); store.setStatus(KeyValueStoreStatus.Offline); doTestBackend(store); } }