示例#1
0
        public void LoadTestNoRegion1()
        {
            CacheItemPolicy      policy  = new CacheItemPolicy(TimeSpan.FromMinutes(1));
            List <ComplexObject> objects = new List <ComplexObject>();
            Random rnd = new Random(3);

            for (int i = 0; i < 1000; i++)
            {
                objects.Add(ComplexObject.CreateWithList(Guid.NewGuid().ToString(), rnd.Next(20)));
            }

            foreach (var item in objects)
            {
                ClientCache.Current.SetOrUpdateAsync(item.Name, item, policy).GetAwaiter().GetResult();
            }

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

            int z = 0;

            foreach (var item in objects)
            {
                var result = ClientCache.Current.TryGetAsync <ComplexObject>(item.Name).GetAwaiter().GetResult();

                Assert.IsNull(result, $"{z}-{item.Name}");
                z++;
            }
        }
示例#2
0
        public void RemoveComplexWithListObject()
        {
            ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST, ComplexObject.CreateWithList("ComplexObjectWithList", 5), new CacheItemPolicy(TimeSpan.FromMinutes(1)), REGION_NAME).GetAwaiter().GetResult();

            var result = ClientCache.Current.TryDeleteAsync(OBJECT_KEY_COMPLEX_WITHLIST, REGION_NAME).GetAwaiter().GetResult();

            Assert.AreEqual <ExecutionResult>(ExecutionResult.Done, result);
        }
示例#3
0
        public void GetComplexWithListObject()
        {
            ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST, ComplexObject.CreateWithList("ComplexObjectWithList", 5), new CacheItemPolicy(TimeSpan.FromMinutes(1)), REGION_NAME).GetAwaiter().GetResult();

            var result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST, REGION_NAME).GetAwaiter().GetResult();

            Assert.AreEqual <string>("ComplexObjectWithList", result.Name);
        }
示例#4
0
        public void AddComplexObjectWithExpriredTime()
        {
            var           cacheItemPolicy = new CacheItemPolicy(TimeSpan.FromMinutes(1));
            ComplexObject result          = null;

            ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST, ComplexObject.CreateWithList("ComplexObjectWithList", 5), cacheItemPolicy, REGION_NAME).GetAwaiter().GetResult();

            while (cacheItemPolicy.AbsoluteExpiration > DateTime.Now)
            {
                result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST, REGION_NAME).GetAwaiter().GetResult();

                Assert.AreEqual <string>("ComplexObjectWithList", result.Name);

                Thread.Sleep(5000);
            }

            result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST, REGION_NAME).GetAwaiter().GetResult();
            Assert.IsNull(result);
        }
示例#5
0
        public void AddTwoComplexObjectWithRandomExpriredTime()
        {
            var           cacheItemPolicyOne = new CacheItemPolicy(TimeSpan.FromSeconds(60));
            var           cacheItemPolicyTwo = new CacheItemPolicy(TimeSpan.FromSeconds(30));
            ComplexObject result             = null;

            ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST + "1", ComplexObject.CreateWithList("ComplexObjectWithList1", 5), cacheItemPolicyOne, REGION_NAME).GetAwaiter().GetResult();
            Thread.Sleep(5000);
            ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST + "2", ComplexObject.CreateWithList("ComplexObjectWithList2", 10), cacheItemPolicyTwo, REGION_NAME).GetAwaiter().GetResult();

            while (cacheItemPolicyTwo.AbsoluteExpiration > DateTime.Now)
            {
                result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST + "2", REGION_NAME).GetAwaiter().GetResult();

                Assert.AreEqual <string>("ComplexObjectWithList2", result.Name);
                Assert.AreEqual <int>(10, result.List.Count);

                Thread.Sleep(5000);
            }

            result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST + "2", REGION_NAME).GetAwaiter().GetResult();
            Assert.IsNull(result);

            while (cacheItemPolicyOne.AbsoluteExpiration > DateTime.Now)
            {
                result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST + "1", REGION_NAME).GetAwaiter().GetResult();

                Assert.AreEqual <string>("ComplexObjectWithList1", result.Name);
                Assert.AreEqual <int>(5, result.List.Count);

                Thread.Sleep(5000);
            }

            result = ClientCache.Current.TryGetAsync <ComplexObject>(OBJECT_KEY_COMPLEX_WITHLIST + "1", REGION_NAME).GetAwaiter().GetResult();
            Assert.IsNull(result);
        }
示例#6
0
 public void AddComplexWithListObject()
 {
     ClientCache.Current.SetOrUpdateAsync(OBJECT_KEY_COMPLEX_WITHLIST, ComplexObject.CreateWithList("ComplexObjectWithList", 5), new CacheItemPolicy(TimeSpan.FromMinutes(1)), REGION_NAME).GetAwaiter().GetResult();
 }