示例#1
0
        public void OverwriteWithAbsoluteExpirationTest()
        {
            var key = "OverwriteWithAbsoluteExpirationTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate <Guid>(key, () => val);

            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet <Guid>(key, out val);

            Assert.IsTrue(exist);

            var val2 = Guid.NewGuid();

            cacheProvider.Overwrite <Guid>(key, val2, DateTime.UtcNow.AddSeconds(4D));

            Thread.Sleep(TimeSpan.FromSeconds(8D));
            Guid val3;

            exist = cacheProvider.TryGet <Guid>(key, out val3);
            Assert.IsFalse(exist);
            Assert.AreEqual(val3, Guid.Empty);
        }
        public void GetOrCreateTest() {
            var key = "GetOrCreateTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate<Guid>(key, () => val);
            Assert.AreEqual(result, val);

            {
                var exist = cacheProvider.TryGet<Guid>(key, out val);
                Assert.IsTrue(exist);
                Assert.AreEqual(result, val);
            }

            {
                var result2 = cacheProvider.GetOrCreate<Guid>(key, () => {
                    Assert.Fail();
                    return Guid.NewGuid();
                });
                Assert.AreEqual(result2, val);
            }
        }
示例#3
0
        public void GetOrCreateTest()
        {
            var key = "GetOrCreateTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate <Guid>(key, () => val);

            Assert.AreEqual(result, val);

            {
                var exist = cacheProvider.TryGet <Guid>(key, out val);
                Assert.IsTrue(exist);
                Assert.AreEqual(result, val);
            }

            {
                var result2 = cacheProvider.GetOrCreate <Guid>(key, () => {
                    Assert.Fail();
                    return(Guid.NewGuid());
                });
                Assert.AreEqual(result2, val);
            }
        }
        public void GetOrCreateWithslidingExpirationTest() {
            var key = "GetOrCreateWithslidingExpirationTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate<Guid>(key, () => val, TimeSpan.FromSeconds(4D));
            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet<Guid>(key, out val);
            Assert.IsTrue(exist);
            Assert.AreEqual(result, val);

            Thread.Sleep(TimeSpan.FromSeconds(8D));
            exist = cacheProvider.TryGet<Guid>(key, out val);
            Assert.IsFalse(exist);
            Assert.AreEqual(val, Guid.Empty);
        }
示例#5
0
        public void GetOrCreateWithslidingExpirationTest()
        {
            var key = "GetOrCreateWithslidingExpirationTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate <Guid>(key, () => val, TimeSpan.FromSeconds(4D));

            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet <Guid>(key, out val);

            Assert.IsTrue(exist);
            Assert.AreEqual(result, val);

            Thread.Sleep(TimeSpan.FromSeconds(8D));
            exist = cacheProvider.TryGet <Guid>(key, out val);
            Assert.IsFalse(exist);
            Assert.AreEqual(val, Guid.Empty);
        }
示例#6
0
        public void OverwriteTest()
        {
            var key = "OverwriteTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate <Guid>(key, () => val);

            Assert.AreEqual(result, val);

            var val2 = Guid.NewGuid();

            cacheProvider.Overwrite <Guid>(key, val2);

            Guid val3;
            var  exist = cacheProvider.TryGet <Guid>(key, out val3);

            Assert.IsTrue(exist);
            Assert.AreEqual(val3, val2);
        }
示例#7
0
        public void ExpireTest()
        {
            var key = "ExpireTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate <Guid>(key, () => val);

            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet <Guid>(key, out val);

            Assert.IsTrue(exist);

            cacheProvider.Expire(key);
            Guid val2;

            exist = cacheProvider.TryGet <Guid>(key, out val2);
            Assert.IsFalse(exist);
            Assert.AreEqual(val2, Guid.Empty);
        }
        public void OverwriteTest() {
            var key = "OverwriteTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate<Guid>(key, () => val);
            Assert.AreEqual(result, val);

            var val2 = Guid.NewGuid();
            cacheProvider.Overwrite<Guid>(key, val2);

            Guid val3;
            var exist = cacheProvider.TryGet<Guid>(key, out val3);
            Assert.IsTrue(exist);
            Assert.AreEqual(val3, val2);
        }
        public void ExpireTest() {
            var key = "ExpireTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate<Guid>(key, () => val);
            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet<Guid>(key, out val);
            Assert.IsTrue(exist);

            cacheProvider.Expire(key);
            Guid val2;
            exist = cacheProvider.TryGet<Guid>(key, out val2);
            Assert.IsFalse(exist);
            Assert.AreEqual(val2, Guid.Empty);
        }
        public void OverwriteWithAbsoluteExpirationTest() {
            var key = "OverwriteWithAbsoluteExpirationTest";
            var val = Guid.NewGuid();

            IHttpRuntimeCacheProvider cacheProvider = new MongoCacheProvider();
            var result = cacheProvider.GetOrCreate<Guid>(key, () => val);
            Assert.AreEqual(result, val);

            var exist = cacheProvider.TryGet<Guid>(key, out val);
            Assert.IsTrue(exist);

            var val2 = Guid.NewGuid();
            cacheProvider.Overwrite<Guid>(key, val2, DateTime.UtcNow.AddSeconds(4D));

            Thread.Sleep(TimeSpan.FromSeconds(8D));
            Guid val3;
            exist = cacheProvider.TryGet<Guid>(key, out val3);
            Assert.IsFalse(exist);
            Assert.AreEqual(val3, Guid.Empty);

        }