Пример #1
0
        public void GetsDataFromInMemoryCache_AndDoesntCheckDistributedCache()
        {
            memoryCache.Set("123456", "1234567889");

            var response = _sut.RetrieveFromCache <TrainingProviderDetailsViewModel>("123456");

            _mockDistributedCache.Verify(s => s.GetAsync(It.IsAny <string>(), It.IsAny <CancellationToken>()), Times.Never());
        }
Пример #2
0
        public void GetsFromDistributedCacheIfKeyDoesntExistInMemoryCache()
        {
            memoryCache = new MemoryCache(new MemoryCacheOptions());

            _sut = new CacheStorageService(_mockDistributedCache.Object, memoryCache, new FatSharedComponentsConfiguration {
                CacheMemoryAbsoluteExpirySeconds = 5
            });

            var response = _sut.RetrieveFromCache <TrainingProviderDetailsViewModel>("123456");

            _mockDistributedCache.Verify(s => s.GetAsync(It.IsAny <string>(), It.IsAny <CancellationToken>()), Times.Once());
        }
Пример #3
0
        public async Task Then_If_The_Item_Does_Not_Exist_Default_Is_Returned(
            string keyName,
            [Frozen] Mock <IDistributedCache> distributedCache,
            CacheStorageService service)
        {
            //Arrange
            distributedCache.Setup(x => x.GetAsync(keyName, It.IsAny <CancellationToken>()))
            .ReturnsAsync(new byte[0]);

            //Act
            var item = await service.RetrieveFromCache <TestObject>(keyName);

            //Assert
            Assert.IsNull(item);
        }
Пример #4
0
        public async Task Then_The_Item_Is_Retrieved_From_The_Cache_By_Key(
            string keyName,
            int expiryInHours,
            TestObject test,
            [Frozen] Mock <IDistributedCache> distributedCache,
            CacheStorageService service)
        {
            //Arrange
            distributedCache.Setup(x => x.GetAsync(keyName, It.IsAny <CancellationToken>()))
            .ReturnsAsync(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(test)));

            //Act
            var item = await service.RetrieveFromCache <TestObject>(keyName);

            //Assert
            Assert.IsNotNull(item);
            item.Should().BeEquivalentTo(test);
        }
        public async Task And_List_Does_Not_Exist_Then_Default_Is_Returned(
            string keyName,
            string appName,
            [Frozen] Mock <IDistributedCache> distributedCache,
            [Frozen] Mock <IConfiguration> configuration,
            CacheStorageService service)
        {
            //Arrange
            configuration.SetupGet(x => x[It.Is <string>(s => s.Equals("ConfigNames"))]).Returns(appName);
            distributedCache.Setup(x => x.GetAsync($"{appName}_{keyName}", It.IsAny <CancellationToken>()))
            .ReturnsAsync(new byte[0]);

            //Act
            var item = await service.RetrieveFromCache <List <TestObject> >(keyName);

            //Assert
            Assert.IsNull(item);
        }
        public async Task Then_The_Item_Is_Retrieved_From_The_Cache_By_Key(
            string keyName,
            int expiryInHours,
            TestObject test,
            string appName,
            [Frozen] Mock <IDistributedCache> distributedCache,
            [Frozen] Mock <IConfiguration> configuration,
            CacheStorageService service)
        {
            //Arrange
            configuration.SetupGet(x => x[It.Is <string>(s => s.Equals("ConfigNames"))]).Returns(appName);
            distributedCache.Setup(x => x.GetAsync($"{appName}_{keyName}", It.IsAny <CancellationToken>()))
            .ReturnsAsync(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(test)));

            //Act
            var item = await service.RetrieveFromCache <TestObject>(keyName);

            //Assert
            Assert.IsNotNull(item);
            item.Should().BeEquivalentTo(test);
        }