public async Task <HttpResponseMessage> Get(byte id) { var result = await redisCache.GetAsync <FeatureViewModel>(id); if (result == null) { List <string> list = new List <string> { "Id" }; var para = APIProvider.APIDefaultParameter(list, id); var data = await _iFeatureRepo.SingleQuery(para); result = new FeatureViewModel { Id = data.Id, Title = data.Title, Image = LayoutGuide.SPA_ResourcePath(Provider.Common.APIEnums.Application.CMS, data.Image), Description = data.Description, Handler = data.Handler, IsUsed = data.IsUsed }; // await redisCache.AddAsync <FeatureViewModel>(result); } return(Request.CreateResponse(HttpStatusCode.OK, result)); }
public async Task AddAsync_Object_Success(bool expected) { var key = _fixture.Create <string>(); var data = _fixture.Create <object>(); var timeOut = _fixture.Create <TimeSpan>(); var value = data.Serialize(_serializerSettings); var expectedKey = $"{_keyPrefix}{key}"; _dataBase.Setup(b => b.StringSetAsync(expectedKey, value, timeOut, When.Always, CommandFlags.None)) .ReturnsAsync(() => expected); var result = await _target.AddAsync(key, data, timeOut); _mockRepository.VerifyAll(); Assert.AreEqual(expected, result); }
public void AddAsync_NullKey_Throws() { Assert.ThrowsAsync <NullKeyException>(async() => await _target.AddAsync(null, null)); }