public When_ServiceStatusHistoryService_Is_Called_To_Save() { var httpContextAccessor = Substitute.For <IHttpContextAccessor>(); httpContextAccessor.HttpContext.Returns(new DefaultHttpContext { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.GivenName, "CreatedBy") })) }); var config = new MapperConfiguration(c => { c.AddMaps(typeof(OpportunityMapper).Assembly); c.ConstructServicesUsing(type => type.Name.Contains("LoggedInUserEmailResolver") ? new LoggedInUserEmailResolver <ServiceStatusHistoryViewModel, Domain.Models.ServiceStatusHistory>(httpContextAccessor) : type.Name.Contains("LoggedInUserNameResolver") ? (object)new LoggedInUserNameResolver <ServiceStatusHistoryViewModel, Domain.Models.ServiceStatusHistory>(httpContextAccessor) : type.Name.Contains("UtcNowResolver") ? new UtcNowResolver <OpportunityDto, Domain.Models.Opportunity>(new DateTimeProvider()) : null); }); var mapper = new Mapper(config); _serviceStatusHistoryRepository = Substitute.For <IRepository <Domain.Models.ServiceStatusHistory> >(); var serviceStatusHistoryService = new ServiceStatusHistoryService(mapper, _serviceStatusHistoryRepository); serviceStatusHistoryService.SaveServiceStatusHistoryAsync(new ServiceStatusHistoryViewModel { IsOnline = true }).GetAwaiter().GetResult(); }
public When_ServiceStatusHistoryService_Is_Called_To_Get_Last_When_Empty() { var config = new MapperConfiguration(c => c.AddMaps(typeof(ServiceStatusHistoryMapper).Assembly)); var mapper = new Mapper(config); var mockDbSet = new ServiceStatusHistoryBuilder() .BuildEmptyList() .AsQueryable() .BuildMockDbSet(); var serviceStatusHistoryRepository = Substitute.For <IRepository <Domain.Models.ServiceStatusHistory> >(); serviceStatusHistoryRepository.GetManyAsync(Arg.Any <Expression <Func <Domain.Models.ServiceStatusHistory, bool> > >()).Returns(mockDbSet); var serviceStatusHistoryService = new ServiceStatusHistoryService(mapper, serviceStatusHistoryRepository); _result = serviceStatusHistoryService.GetLatestServiceStatusHistoryAsync() .GetAwaiter().GetResult(); }