public void NearCacheListenNoneCacheStatisticsTest() { LocalNamedCache localcache = new LocalNamedCache(); INamedCache safecache = CacheFactory.GetCache(CacheName); NearCache nearcache = new NearCache(localcache, safecache, CompositeCacheStrategyType.ListenNone); nearcache.Clear(); Hashtable ht = new Hashtable(); ht.Add(1, "Aleks"); ht.Add(2, "Ana"); ht.Add(3, "Goran"); ht.Add(4, "Ivan"); nearcache.InsertAll(ht); foreach (DictionaryEntry entry in ht) { Assert.IsTrue(nearcache.Contains(entry.Key)); } Assert.AreEqual(ht.Count, nearcache.CacheHits); localcache.LocalCache = new LocalCache(Int32.MaxValue, 1); Thread.Sleep(1); foreach (DictionaryEntry entry in ht) { Assert.IsTrue(nearcache.Contains(entry.Key)); } Assert.AreEqual(ht.Count, nearcache.CacheMisses); nearcache.Clear(); nearcache.Destroy(); Assert.IsFalse(nearcache.IsActive); }
public void TestNearCacheDispose() { LocalNamedCache localcache = new LocalNamedCache(); INamedCache safecache = CacheFactory.GetCache(CacheName); NearCache nearcache; string[] keys = { "key1", "key2", "key3", "key4" }; string[] values = { "value1", "value2", "value3", "value4" }; using (nearcache = new NearCache(localcache, safecache, CompositeCacheStrategyType.ListenNone)) { nearcache.Clear(); IDictionary h = new Hashtable(); h.Add(keys[0], values[0]); h.Add(keys[1], values[1]); h.Add(keys[2], values[2]); h.Add(keys[3], values[3]); nearcache.InsertAll(h); foreach (object key in nearcache.Keys) { Assert.IsTrue(nearcache.Contains(key)); } } //after disposal Assert.IsFalse(nearcache.IsActive); // fresh reference to the cache safecache = CacheFactory.GetCache(CacheName); Assert.IsTrue(safecache.IsActive); CacheFactory.Shutdown(); }