diff --git a/.github/workflows/pullrequest.yml b/.github/workflows/pullrequest.yml index 6eac30e..20dfc44 100644 --- a/.github/workflows/pullrequest.yml +++ b/.github/workflows/pullrequest.yml @@ -36,11 +36,11 @@ jobs: dotnet test "TransactionProcessor.Tests\TransactionProcessor.Tests.csproj" dotnet test "TransactionProcessor.DatabaseTests\TransactionProcessor.DatabaseTests.csproj" - # - name: Build Docker Image - # run: docker build . --file TransactionProcessor/Dockerfile --tag transactionprocessor:latest + - name: Build Docker Image + run: docker build . --file TransactionProcessor/Dockerfile --tag transactionprocessor:latest - # - name: Run Integration Tests - # run: dotnet test "TransactionProcessor.IntegrationTests\TransactionProcessor.IntegrationTests.csproj" --filter Category=PRTest --logger "trx;LogFileName=test-results.trx" + - name: Run Integration Tests + run: dotnet test "TransactionProcessor.IntegrationTests\TransactionProcessor.IntegrationTests.csproj" --filter Category=PRTest --logger "trx;LogFileName=test-results.trx" - uses: actions/upload-artifact@v4.4.0 if: ${{ failure() }} diff --git a/TransactionProcessor.BusinessLogic/Services/TransactionValidationService.cs b/TransactionProcessor.BusinessLogic/Services/TransactionValidationService.cs index 9a41905..42acf04 100644 --- a/TransactionProcessor.BusinessLogic/Services/TransactionValidationService.cs +++ b/TransactionProcessor.BusinessLogic/Services/TransactionValidationService.cs @@ -75,7 +75,7 @@ public async Task> ValidateLogonTransaction( // Validate Merchant var merchantValidationResult = await ValidateMerchant(estateValidationResult.Data.additionalData.EstateName, merchantId, cancellationToken); - if (merchantValidationResult.IsFailed) return CreateFailedResult(merchantValidationResult.Data.validationResult); ; + if (merchantValidationResult.IsFailed) return CreateFailedResult(merchantValidationResult.Data.validationResult); Models.Merchant.Merchant merchant = merchantValidationResult.Data.additionalData.GetMerchant(); diff --git a/TransactionProcessor.Client/TransactionProcessorClient.cs b/TransactionProcessor.Client/TransactionProcessorClient.cs index 7992fe4..9fe3bd3 100644 --- a/TransactionProcessor.Client/TransactionProcessorClient.cs +++ b/TransactionProcessor.Client/TransactionProcessorClient.cs @@ -102,6 +102,25 @@ private async Task> SendPostRequest(String uri, String accessToke return Result.Success(result.Data); } + private async Task> SendPutRequest(String uri, String accessToken, String content, CancellationToken cancellationToken) + { + + HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Put, uri); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue(AuthenticationSchemes.Bearer, accessToken); + requestMessage.Content = new StringContent(content, Encoding.UTF8, "application/json"); + + // Make the Http Call here + HttpResponseMessage httpResponse = await this.HttpClient.SendAsync(requestMessage, cancellationToken); + + // Process the response + Result result = await this.HandleResponseX(httpResponse, cancellationToken); + + if (result.IsFailed) + return ResultHelpers.CreateFailure(result); + + return Result.Success(result.Data); + } + public static class AuthenticationSchemes { public static readonly String Bearer = "Bearer"; @@ -306,8 +325,7 @@ public async Task> GetVoucherByCode(String accessToke catch (Exception ex) { // An exception has occurred, add some additional information to the message Exception exception = new("Error getting voucher by code.", ex); - ; - + throw exception; } } @@ -422,7 +440,7 @@ public async Task> RedeemVoucher(String accessToke try { String requestSerialised = JsonConvert.SerializeObject(redeemVoucherRequest); - Result result = await this.SendPostRequest(requestUri, accessToken, requestSerialised, cancellationToken); + Result result = await this.SendPutRequest(requestUri, accessToken, requestSerialised, cancellationToken); if (result.IsFailed) return ResultHelpers.CreateFailure(result); diff --git a/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs b/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs index 7f1468b..03b53a7 100644 --- a/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs +++ b/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs @@ -1340,7 +1340,7 @@ public async Task StartReconciliation(ReconciliationDomainEvents.Reconci await context.Reconciliations.AddAsync(reconciliation, cancellationToken); - return await context.SaveChangesAsync(cancellationToken); ; + return await context.SaveChangesAsync(cancellationToken); } public async Task StartTransaction(TransactionDomainEvents.TransactionHasStartedEvent domainEvent,