public async Task DoSaveManagers_CreatingOrUpdatingUsers_ReturningTrueAndCreatedOne() { _mockUnitOfWork.Setup(x => x.CommitAsync()).ReturnsAsync(true); var shops = new List <Shop> { new Shop { Id = 10, Cnpj = "123123123123123123", ShopCode = "123123" } }; var offices = new List <Office> { new Office { Id = 2 } }; var userStatus = new UserStatus { Id = 1 }; var havanGeneral = new List <HavanUserIntegrationDto> { new HavanUserIntegrationDto { CnpjFilial = "123123123123123123", CpfGerente = "12312312312", CodigoFilial = "123123" } }; var havanManagers = new List <HavanUserIntegrationDto> { new HavanUserIntegrationDto { CpfGerente = "12312312312", NomeGerente = "NomeGerente" } }; var users = new List <User> { new User { Id = 10, Cpf = "32132132132", Office = new Office { Id = 1 } } }; var service = new HavanService( _mockProductRepository.Object, _mockLogger.Object, _mockUserRepository.Object, _mockShopUserRepository.Object, _mockShopRepository.Object, _mockUserStatusRepository.Object, _mockUserStatusLogRepository.Object, _mockOfficeRepository.Object, _mockSaleFileRepository.Object, _mockSaleFileDataRepository.Object, _mockFileStatusRepository.Object, _mockSaleFileSkuStatusRepository.Object, _mockSaleRepository.Object, _mockNetworkRepository.Object, _mockUnitOfWork.Object); var result = await service.DoSaveManagers(havanGeneral, havanManagers, shops, offices, userStatus, users); Assert.Equal(2, (int)result.Users.Count); Assert.True(result.Saved); }
public async Task DoSaveSalesman_CreatingOrUpdatingUsers_ReturningTrueAndUpdateUserToInactivated() { _mockSaleRepository.Setup(x => x.CustomFindLast(It.IsAny <Expression <Func <Sale, bool> > >(), It.IsAny <Expression <Func <Sale, int> > >())).ReturnsAsync(new Sale { CreatedAt = DateTime.Now.AddMonths(-4) }); _mockUnitOfWork.Setup(x => x.CommitAsync()).ReturnsAsync(true); var arrangeStatus = new List <UserStatus>(); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.PreRegistration }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.WaitingForEmail }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.Active }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.Off }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.Inactive }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.WaitingForSMS }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.OnlyCatalog }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.PasswordExpired }); arrangeStatus.Add(new UserStatus { Id = (int)UserStatusEnum.FriendInvitation }); _mockUserStatusRepository.Setup(x => x.GetById(It.IsAny <int>())) .ReturnsAsync((int param) => arrangeStatus.AsQueryable().Where(x => x.Id == param).First()); var shops = new List <Shop> { new Shop { Id = 10, Cnpj = "123123123123123123", ShopCode = "123123" } }; var offices = new List <Office> { new Office { Id = 1 } }; var userStatus = new UserStatus { Id = 1 }; var havanGeneral = new List <HavanUserIntegrationDto> { new HavanUserIntegrationDto { CnpjFilial = "123123123123123123", CpfVendedor = "32132132132", CodigoFilial = "123123" } }; var users = new List <User> { new User { Id = 10, Cpf = "32132132132", Office = new Office { Id = 1 }, UserStatus = new UserStatus { Id = (int)UserStatusEnum.OnlyCatalog } } }; var service = new HavanService( _mockProductRepository.Object, _mockLogger.Object, _mockUserRepository.Object, _mockShopUserRepository.Object, _mockShopRepository.Object, _mockUserStatusRepository.Object, _mockUserStatusLogRepository.Object, _mockOfficeRepository.Object, _mockSaleFileRepository.Object, _mockSaleFileDataRepository.Object, _mockFileStatusRepository.Object, _mockSaleFileSkuStatusRepository.Object, _mockSaleRepository.Object, _mockNetworkRepository.Object, _mockUnitOfWork.Object); var result = await service.DoSaveSalesman(havanGeneral, shops, offices, userStatus, users); Assert.Equal(1, (int)result.Users.Count); Assert.Equal((int)UserStatusEnum.Inactive, result.Users.First().UserStatus.Id); Assert.True(result.Saved); }