public async Task ShouldRemoveTagsWhenItemExpired()
        {
            // Arrange
            var cache = new RedisCacheProvider(_redis)
            {
                Logger = new TestRedisLogger()
            };
            var          key    = _fixture.FormatKey($"{Guid.NewGuid()}TagCacheTests:Add");
            const string value  = "Test Value";
            const string tag    = "Remove Tag";
            var          expiry = DateTime.Now.AddYears(-1);
            await cache.SetItem(key, value, expiry, tag).ConfigureAwait(false);

            // Act
            var result = await RedisTagManager.GetKeysForTag(new RedisClient(_redis), tag).ConfigureAwait(false);

            // Assert
            result.Any(t => t == tag).ShouldBeFalse();
        }
Exemplo n.º 2
0
        public void Get_ExpiredDate_RemovesTags()
        {
            var redis  = new RedisConnectionManager();
            var cache  = new RedisCacheProvider(redis);
            var config = NewCacheConfiguration(redis);

            cache.Logger = new TestRedisLogger();
            string   key     = "TagCacheTests:Add";
            String   value   = "Hello World!";
            var      tag     = "remove tag";
            DateTime expires = new DateTime(2000, 12, 11);

            cache.Set(key, value, expires, tag);
            var test = cache.Get <String>(key);

            var tagManager = new RedisTagManager(config.CacheItemFactory);

            var result = tagManager.GetKeysForTag(newRedisClient(), tag);

            Assert.AreEqual(result.Count(x => x == tag), 0);
        }
        public void Get_ExpiredDate_RemovesTags()
        {
            var redis = new RedisConnectionManager();
            var cache = new RedisCacheProvider(redis);
            var config = NewCacheConfiguration(redis);
            cache.Logger = new TestRedisLogger();
            string key = "TagCacheTests:Add";
            String value = "Hello World!";
            var tag = "remove tag";
            DateTime expires = new DateTime(2000, 12, 11);

            cache.Set(key, value, expires, tag);
            var test = cache.Get<String>(key);

            var tagManager = new RedisTagManager(config.CacheItemFactory);

            var result = tagManager.GetKeysForTag(newRedisClient(), tag);

            Assert.AreEqual(result.Count(x => x == tag), 0);
        }