public async Task GetClientRevenueData() { var data = new ClientRevenueData() { RowNumber = 1, ClientId = Guid.NewGuid(), ClientLastName = "van Niekerk", ClientInitials = "DJ", ClientDateOfBirth = DateTime.Now, MonthlyAnnuityMonth = 2, AnnualAnnuityAverage = 3, TotalMonthlyEarnings = 4, OnceOff = 5, LifeFirstYears = 6, GrandTotal = 7, AllocationsCount = 8 }; var pagedItems = new PagedItems <ClientRevenueData>() { TotalItems = 1, Items = new List <ClientRevenueData>() { data } }; var service = new Mock <ICommissionReportService>(); var authService = TestHelper.MockAuthenticationService(Scope.Branch); ClientRevenueQueryOptions queryOptions = null; service.Setup(c => c.GetClientRevenueData(It.IsAny <ClientRevenueQueryOptions>())) .Callback((ClientRevenueQueryOptions options) => queryOptions = options) .ReturnsAsync(pagedItems); var controller = new CommissionReportsController(service.Object, authService.Object); var result = await controller.GetClientRevenueData("MonthlyAnnuityMonth", "desc", 15, 2, $"yearEnding=2019;monthEnding=1"); Assert.Equal(Scope.Branch, queryOptions.Scope.Scope); Assert.Equal("MonthlyAnnuityMonth", queryOptions.SortOptions.Column); Assert.Equal(SortDirection.Descending, queryOptions.SortOptions.Direction); Assert.Equal(15, queryOptions.PageOptions.Size); Assert.Equal(2, queryOptions.PageOptions.Number); Assert.Equal(2019, queryOptions.YearEnding); Assert.Equal(1, queryOptions.MonthEnding); var okResult = Assert.IsType <OkObjectResult>(result); var returnValue = Assert.IsType <PagedItems <ClientRevenueData> >(okResult.Value); Assert.Same(pagedItems, returnValue); }
public async Task GetPastRevenueCommissionData() { var data = new PastRevenueCommissionData() { AmountExcludingVAT = 100, CommissionEarningsTypeId = Guid.NewGuid(), }; var items = new List <PastRevenueCommissionData>() { data }; var service = new Mock <ICommissionReportService>(); var authService = TestHelper.MockAuthenticationService(Scope.Branch); PastRevenueCommissionQueryOptions queryOptions = null; service.Setup(c => c.GetPastRevenueCommissionData(It.IsAny <PastRevenueCommissionQueryOptions>())) .Callback((PastRevenueCommissionQueryOptions options) => queryOptions = options) .ReturnsAsync(items); var controller = new CommissionReportsController(service.Object, authService.Object); var companyId = Guid.NewGuid(); var result = await controller.GetPastRevenueCommissionData("AmountExcludingVAT", "desc", 15, 2, $"companyId=" + companyId.ToString()); Assert.Equal(Scope.Branch, queryOptions.Scope.Scope); Assert.Equal("AmountExcludingVAT", queryOptions.SortOptions.Column); Assert.Equal(SortDirection.Descending, queryOptions.SortOptions.Direction); Assert.Equal(15, queryOptions.PageOptions.Size); Assert.Equal(2, queryOptions.PageOptions.Number); Assert.Equal(companyId, queryOptions.CompanyId.Single()); var okResult = Assert.IsType <OkObjectResult>(result); var returnValue = Assert.IsType <List <PastRevenueCommissionData> >(okResult.Value); Assert.Same(items, returnValue); }