예제 #1
0
        public void TestCachingPurge()
        {
            Cache cache = new NativeCache();

            cache.Add("key1", 123456);
            cache.Add("key2", 678910);

            cache.Purge();


            Assert.Catch <CacheEntryNotFoundException>(() => cache.Get <int>("key1"));
            Assert.Catch <CacheEntryNotFoundException>(() => cache.Get <int>("key2"));
        }
예제 #2
0
        public void TestCachingRemoveSilent()
        {
            Cache cache = new NativeCache();

            cache.Add("key1", 123456);
            cache.Remove("key1");
            Assert.AreEqual(cache.Get <int>("key1", 0), 0);
        }
예제 #3
0
        public void TestDifferentCaches()
        {
            Cache cache1 = new NativeCache(/*"cache1"*/);
            Cache cache2 = new NativeCache(/*"cache2"*/);

            cache1.Add("A", 5);
            Assert.AreEqual(cache2.Get <int>("A"), 5);
        }
예제 #4
0
        public void TestCachingRemove()
        {
            Cache cache = new NativeCache();

            cache.Add("key1", 123456);

            cache.Remove("key1");
            cache.Get <int>("key1");
        }
예제 #5
0
        public void TestCachingExpiration()
        {
            Cache cache = new NativeCache();

            cache.Add("entry", 123, TimeSpan.FromTicks(1));

            Thread.Sleep(TimeSpan.FromSeconds(1));

            cache.Get <int>("entry");
        }
예제 #6
0
        public void TestComplexObject()
        {
            Cache cache = new NativeCache();

            ComplexObject obj = new ComplexObject(5, 7);

            cache.Add("object", obj);

            ComplexObject obj2 = cache.Get <ComplexObject>("object");

            Assert.AreEqual(obj.Foo(), obj2.Foo());
        }
예제 #7
0
        public void TestCachingAddGet()
        {
            Cache cache = new NativeCache();

            cache.Add("key1", 123456);
            cache.Add("key2", "Hallo Welt");
            cache.Add("key3", 123.456);

            Assert.IsTrue(cache.Contains("key1"));
            Assert.IsTrue(cache.Contains("key2"));
            Assert.IsTrue(cache.Contains("key3"));
            Assert.IsFalse(cache.Contains("non-existing"));
            Assert.AreEqual(cache.Get <int>("key1"), 123456);
            Assert.AreEqual(cache.Get <string>("key2"), "Hallo Welt");
            Assert.AreEqual(cache.Get <double>("key3"), 123.456);
            Assert.AreEqual(cache.Get <int>("non-existing", -1), -1);

            int val;

            Assert.IsTrue(cache.TryGet("key1", out val));
            Assert.AreEqual(val, 123456);
        }