public async Task ShouldInsertByCreateDto() { //Arrange var domainService = new Mock <IFilterService>(); var agentService = new Mock <IAgentService>(); var notificationManager = new Mock <INotificationManager>(); var unitOfWorkManager = new Mock <IUnitOfWorkManager>(); unitOfWorkManager.Setup(t => t.Current.SaveChanges()); domainService.Setup(t => t.Insert(It.Is <Filter>(r => r.Name == "name"))).Returns(MakeFilterEntity(1)); FilterAppService filterAppService = new FilterAppService(domainService.Object, agentService.Object, notificationManager.Object, null); filterAppService.UnitOfWorkManager = unitOfWorkManager.Object; //Act FilterDetailsDto filterDetailsDto = await filterAppService.Insert(MakeFilterCreateDto()); //Assert AssertDtoEqualToEntity(MakeFilterEntity(1), MakeFilterCreateDto()); AssertDtoEqualToEntity(MakeFilterEntity(1), filterDetailsDto); Assert.NotNull(filterDetailsDto); domainService.Verify(t => t.CheckFieldIdExist(It.Is <List <FilterCondition> >(r => r.FirstOrDefault().FieldId == 1))); domainService.Verify(t => t.CheckFieldValue(It.Is <List <FilterCondition> >(r => r.FirstOrDefault().Value == "a"))); agentService.Verify(t => t.FillCreatedByName(It.Is <List <FilterDetailsDto> >(r => r.FirstOrDefault().CreatedBy == 1))); notificationManager.Verify(t => t.NotifyNewFilter(It.Is <int>(r => r == 10000), It.Is <int>(r => r == 1))); }
public async Task ShouldUpdate() { //Arrange var domainService = new Mock <IFilterService>(); var unitOfWorkManager = new Mock <IUnitOfWorkManager>(); var notificationManager = new Mock <INotificationManager>(); var agentService = new Mock <IAgentService>(); unitOfWorkManager.Setup(t => t.Current.SaveChanges()); Filter filter = MakeFilterEntity(1); domainService.Setup(t => t.Find(1)).Returns(filter); FilterAppService filterAppService = new FilterAppService(domainService.Object, agentService.Object, notificationManager.Object, null); filterAppService.UnitOfWorkManager = unitOfWorkManager.Object; //Act FilterDetailsDto filterDetailsDto = await filterAppService.Update(1, MakeFilterUpdateDto()); //Assert domainService.Verify(t => t.DeleteConditons(It.Is <Filter>(r => r.Id == 1))); domainService.Verify(t => t.UpdateFilter(It.Is <Filter>(r => r.Id == 1), It.Is <FilterCondition[]>(r => r.FirstOrDefault().FieldId == 1))); notificationManager.Verify(t => t.NotifyUpdateFilter(It.Is <int>(r => r == 10000), It.Is <int>(r => r == 1))); agentService.Verify(t => t.FillCreatedByName(It.Is <List <FilterDetailsDto> >(r => r.FirstOrDefault().CreatedBy == 1))); AssertDtoEqualToEntity(filter, filterDetailsDto); AssertDtoEqualToEntity(filter, MakeFilterCreateDto()); }
private void AssertDtoEqualToEntity(Filter entity, FilterDetailsDto dto) { Assert.NotNull(dto); Assert.Equal(entity.Name, dto.Name); Assert.Equal(entity.Index, dto.Index); Assert.Equal(entity.Type, dto.Type); Assert.Equal(entity.LogicalExpression, dto.LogicalExpression); Assert.Equal(entity.IfPublic, dto.IfPublic); Assert.Equal(entity.CreatedBy, dto.CreatedBy); Assert.Equal(entity.Conditions.FirstOrDefault().FieldId, dto.Conditions.FirstOrDefault().FieldId); Assert.Equal(entity.Conditions.FirstOrDefault().Value, dto.Conditions.FirstOrDefault().Value); }
public void ShouldFindFilterById() { //Arrange var domainService = new Mock <IFilterService>(); var agentService = new Mock <IAgentService>(); domainService.Setup(t => t.Find(1)).Returns(MakeFilterEntity(1)); agentService.Setup(t => t.GetDisplayName(1)).Returns("a"); FilterAppService filterAppService = new FilterAppService(domainService.Object, agentService.Object, null, null); //Act FilterDetailsDto filterDetailsDto = filterAppService.Find(1); //Assert Assert.NotNull(filterDetailsDto); AssertDtoEqualToEntity(MakeFilterEntity(1), filterDetailsDto); Assert.Equal("a", filterDetailsDto.CreatedByName); }