Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,9 @@ public void ProcessSaleTransactionRequest_CanBeCreated_IsCreated()
TestData.TransactionNumber,
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData);
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId);

processSaleTransactionRequest.ShouldNotBeNull();
processSaleTransactionRequest.EstateId.ShouldBe(TestData.EstateId);
Expand All @@ -48,6 +50,8 @@ public void ProcessSaleTransactionRequest_CanBeCreated_IsCreated()
processSaleTransactionRequest.CustomerEmailAddress.ShouldBe(TestData.CustomerEmailAddress);
processSaleTransactionRequest.AdditionalTransactionMetadata.ShouldNotBeNull();
processSaleTransactionRequest.AdditionalTransactionMetadata.Count.ShouldBe(TestData.AdditionalTransactionMetaData.Count);
processSaleTransactionRequest.ContractId.ShouldBe(TestData.ContractId);
processSaleTransactionRequest.ProductId.ShouldBe(TestData.ProductId);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -219,5 +219,19 @@ await transactionAggregateManager.RequestEmailReceipt(TestData.EstateId,
TestData.CustomerEmailAddress,
CancellationToken.None);
}

[Fact]
public async Task TransactionAggregateManager_AddProductDetails_ProductDetailsAddedToTransaction()
{
Mock<IAggregateRepository<TransactionAggregate>> aggregateRepository = new Mock<IAggregateRepository<TransactionAggregate>>();
aggregateRepository.Setup(a => a.GetLatestVersion(It.IsAny<Guid>(), It.IsAny<CancellationToken>())).ReturnsAsync(TestData.GetStartedTransactionAggregate());
TransactionAggregateManager transactionAggregateManager = new TransactionAggregateManager(aggregateRepository.Object);

await transactionAggregateManager.AddProductDetails(TestData.EstateId,
TestData.TransactionId,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -292,6 +292,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_SuccesfulOpera
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.Success);
Expand Down Expand Up @@ -343,6 +345,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_FailedOperator
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.TransactionDeclinedByOperator);
Expand Down Expand Up @@ -382,6 +386,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_MerchantWithNu
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoValidDevices);
Expand Down Expand Up @@ -422,6 +428,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_MerchantWithNo
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoValidDevices);
Expand Down Expand Up @@ -461,6 +469,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_IncorrectDevic
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.InvalidDeviceIdentifier);
Expand Down Expand Up @@ -500,6 +510,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_InvalidEstate_
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.InvalidEstateId);
Expand Down Expand Up @@ -539,6 +551,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_NotEnoughCredi
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.MerchantDoesNotHaveEnoughCredit);
Expand All @@ -560,8 +574,7 @@ public async Task TransactionDomainService_ProcessSaleTransaction_InvalidMerchan

securityServiceClient.Setup(s => s.GetToken(It.IsAny<String>(), It.IsAny<String>(), It.IsAny<CancellationToken>())).ReturnsAsync(TestData.TokenResponse);
estateClient.Setup(e => e.GetEstate(It.IsAny<String>(), It.IsAny<Guid>(), It.IsAny<CancellationToken>())).ReturnsAsync(TestData.GetEstateResponseWithOperator1);
estateClient.Setup(e => e.GetMerchant(It.IsAny<String>(), It.IsAny<Guid>(), It.IsAny<Guid>(), It.IsAny<CancellationToken>()))
.ReturnsAsync(TestData.GetEmptyMerchantResponse);
estateClient.Setup(e => e.GetMerchant(It.IsAny<String>(), It.IsAny<Guid>(), It.IsAny<Guid>(), It.IsAny<CancellationToken>())).ThrowsAsync(new Exception("Exception", new KeyNotFoundException("Invalid Merchant")));
transactionAggregateManager.Setup(t => t.GetAggregate(It.IsAny<Guid>(), It.IsAny<Guid>(), It.IsAny<CancellationToken>()))
.ReturnsAsync(TestData.GetLocallyDeclinedTransactionAggregate(TransactionResponseCode.InvalidMerchantId));

Expand All @@ -578,6 +591,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_InvalidMerchan
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.InvalidMerchantId);
Expand Down Expand Up @@ -617,6 +632,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_EstateWithEmpt
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoEstateOperators);
Expand Down Expand Up @@ -656,6 +673,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_EstateWithNull
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoEstateOperators);
Expand Down Expand Up @@ -695,6 +714,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_OperatorNotSup
TestData.OperatorIdentifier2,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.OperatorNotValidForEstate);
Expand Down Expand Up @@ -734,6 +755,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_MerchantWithEm
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoMerchantOperators);
Expand Down Expand Up @@ -773,6 +796,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_MerchantWithNu
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.NoMerchantOperators);
Expand Down Expand Up @@ -812,6 +837,8 @@ public async Task TransactionDomainService_ProcessSaleTransaction_OperatorNotSup
TestData.OperatorIdentifier1,
TestData.CustomerEmailAddress,
TestData.AdditionalTransactionMetaData,
TestData.ContractId,
TestData.ProductId,
CancellationToken.None);

this.ValidateResponse(response, TransactionResponseCode.OperatorNotValidForMerchant);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ public async Task<ProcessSaleTransactionResponse> Handle(ProcessSaleTransactionR
request.OperatorIdentifier,
request.CustomerEmailAddress,
request.AdditionalTransactionMetadata,
request.ContractId,
request.ProductId,
cancellationToken);

return saleResponse;
Expand Down
Loading