Skip to content

Commit d9492e7

Browse files
Make date range dynamic in query; improve test assertions
Updated ReportingManager to use request-supplied start and end dates for grand total amount queries instead of hardcoded values. Enhanced TransactionsEndpointTests by asserting that PercentageOfTotal is non-zero, ensuring more robust test coverage.
1 parent 82138eb commit d9492e7

2 files changed

Lines changed: 2 additions & 1 deletion

File tree

EstateReportingAPI.BusinessLogic/ReportingManager.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1157,7 +1157,7 @@ public async Task<Result<ProductPerformanceResponse>> GetProductPerformanceRepor
11571157
using ResolvedDbContext<EstateManagementContext>? resolvedContext = this.Resolver.Resolve(EstateManagementDatabaseName, request.EstateId.ToString());
11581158
await using EstateManagementContext context = resolvedContext.Context;
11591159

1160-
var grandTotalAmountQuery = (from t in context.Transactions where t.TransactionType == "Sale" && t.TransactionDate >= new DateTime(2025, 12, 21) && t.TransactionDate <= new DateTime(2025, 12, 25) select t.TransactionAmount);
1160+
var grandTotalAmountQuery = (from t in context.Transactions where t.TransactionType == "Sale" && t.TransactionDate >= request.StartDate && t.TransactionDate <= request.EndDate select t.TransactionAmount);
11611161
var grandTotalAmountResult = await ExecuteQuerySafeSum<decimal>(grandTotalAmountQuery, cancellationToken);
11621162
if (grandTotalAmountResult.IsFailed)
11631163
return ResultHelpers.CreateFailure(grandTotalAmountResult);

EstateReportingAPI.IntegrationTests/TransactionsEndpointTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -938,6 +938,7 @@ public async Task TransactionsEndpoint_ProductPerformanceReport_SummaryDataRetur
938938
productPerformanceResponseDetail.ShouldNotBeNull();
939939
productPerformanceResponseDetail.TransactionCount.ShouldBe(transactions.Count(t => t.ContractProductId == product.productId));
940940
productPerformanceResponseDetail.TransactionValue.ShouldBe(transactions.Where(t => t.ContractProductId == product.productId).Sum(t => t.TransactionAmount));
941+
productPerformanceResponseDetail.PercentageOfTotal.ShouldNotBe(0);
941942
}
942943
}
943944

0 commit comments

Comments
 (0)