Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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();
        }