public async Task EstateManagementRepository_GetMerchants_MerchantRetrieved(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); context.Merchants.Add(TestData.MerchantEntity); context.MerchantContacts.Add(TestData.MerchantContactEntity); context.MerchantAddresses.Add(TestData.MerchantAddressEntity); context.MerchantDevices.Add(TestData.MerchantDeviceEntity); context.MerchantOperators.Add(TestData.MerchantOperatorEntity); context.MerchantSecurityUsers.Add(TestData.MerchantSecurityUserEntity); await context.SaveChangesAsync(); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <EstateReporting.Database.Entities.Merchant>(), It.IsAny <List <MerchantAddress> >(), It.IsAny <List <MerchantContact> >(), It.IsAny <List <MerchantOperator> >(), It.IsAny <List <MerchantDevice> >(), It.IsAny <List <MerchantSecurityUser> >())); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); List <Merchant> merchantListModel = await estateManagementRepository.GetMerchants(TestData.EstateId, CancellationToken.None); merchantListModel.ShouldNotBeNull(); merchantListModel.ShouldNotBeEmpty(); merchantListModel.ShouldHaveSingleItem(); }
public async Task EstateManagementRepository_GetEstate_EstateNotFound_ErrorThrown(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <Estate>(), It.IsAny <List <EstateOperator> >(), It.IsAny <List <EstateSecurityUser> >())) .Returns(new Models.Estate.Estate()); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); Should.Throw <NotFoundException>(async() => { await estateManagementRepository.GetEstate(TestData.EstateId, CancellationToken.None); }); }
public async Task EstateManagementRepository_GetEstate_EstateRetrieved(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); context.Estates.Add(TestData.EstateEntity); context.EstateOperators.Add(TestData.EstateOperatorEntity); context.EstateSecurityUsers.Add(TestData.EstateSecurityUserEntity); await context.SaveChangesAsync(); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <Estate>(), It.IsAny <List <EstateOperator> >(), It.IsAny <List <EstateSecurityUser> >())) .Returns(new Models.Estate.Estate()); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); Models.Estate.Estate estateModel = await estateManagementRepository.GetEstate(TestData.EstateId, CancellationToken.None); estateModel.ShouldNotBeNull(); }
public async Task EstateManagementRepository_GetContract_ContractNotFound_ErrorThrown(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <Contract>(), It.IsAny <List <ContractProduct> >(), It.IsAny <List <ContractProductTransactionFee> >())) .Returns(TestData.ContractModel); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); Should.Throw <NotFoundException>(async() => { await estateManagementRepository.GetContract(TestData.EstateId, TestData.ContractId, false, false, CancellationToken.None); }); }
public async Task EstateManagementRepository_GetContracts_ContractsRetrieved(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); context.Contracts.Add(TestData.ContractEntity); context.ContractProducts.Add(TestData.ContractProductEntity); context.EstateOperators.Add(TestData.EstateOperatorEntity); await context.SaveChangesAsync(); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <Contract>(), It.IsAny <List <ContractProduct> >(), It.IsAny <List <ContractProductTransactionFee> >())) .Returns(TestData.ContractModel); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); List <Models.Contract.Contract> contractModelList = await estateManagementRepository.GetContracts(TestData.EstateId, CancellationToken.None); contractModelList.ShouldNotBeNull(); contractModelList.ShouldNotBeEmpty(); }
public async Task EstateManagementRepository_GetTransactionFeesForProduct_TransactionFeesForProductRetrieved(TestDatabaseType testDatabaseType) { EstateReportingContext context = await EstateManagementRepositoryTests.GetContext(Guid.NewGuid().ToString("N"), testDatabaseType); context.ContractProductTransactionFees.Add(TestData.ContractProductTransactionFeeEntity); await context.SaveChangesAsync(); var dbContextFactory = this.GetMockDbContextFactory(); Mock <IModelFactory> modelFactory = new Mock <IModelFactory>(); dbContextFactory.Setup(d => d.GetContext(It.IsAny <Guid>(), It.IsAny <CancellationToken>())).ReturnsAsync(context); modelFactory.Setup(m => m.ConvertFrom(It.IsAny <List <ContractProductTransactionFee> >())).Returns(TestData.ProductTransactionFees); EstateManagementRepository estateManagementRepository = new EstateManagementRepository(dbContextFactory.Object, modelFactory.Object); List <ContractProductTransactionFeeModel> transactionFeesModel = await estateManagementRepository.GetTransactionFeesForProduct(TestData.EstateId, TestData.MerchantId, TestData.ContractId, TestData.ProductId, CancellationToken.None); transactionFeesModel.ShouldNotBeNull(); transactionFeesModel.ShouldHaveSingleItem(); }