コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }