Esempio n. 1
0
        public async Task Get()
        {
            var allocation = new CommissionAllocationEdit()
            {
                Id           = Guid.NewGuid(),
                FromClientId = Guid.NewGuid(),
                ToClientId   = Guid.NewGuid(),
                PolicyIds    = new List <Guid>()
                {
                    Guid.NewGuid()
                }
            };

            var service     = new Mock <ICommissionAllocationService>();
            var authService = TestHelper.MockAuthenticationService(Scope.Branch);

            service.Setup(c => c.GetCommissionAllocation(It.IsAny <ScopeOptions>(), It.Is <Guid>(m => m == allocation.Id.Value)))
            .ReturnsAsync(allocation);

            var controller = new CommissionAllocationsController(service.Object, authService.Object);

            var result = await controller.Get(allocation.Id.Value);

            var okResult    = Assert.IsType <OkObjectResult>(result);
            var returnValue = Assert.IsType <CommissionAllocationEdit>(okResult.Value);

            Assert.Same(allocation, returnValue);
        }
Esempio n. 2
0
        public async Task Delete()
        {
            var allocationId = Guid.NewGuid();

            var service     = new Mock <ICommissionAllocationService>();
            var authService = TestHelper.MockAuthenticationService(Scope.Branch);

            var result = new Result()
            {
                Success = true
            };

            ScopeOptions options = null;
            Guid         deleted = Guid.Empty;

            service.Setup(c => c.DeleteCommissionAllocation(It.IsAny <ScopeOptions>(), It.Is <Guid>(m => m == allocationId)))
            .Callback((ScopeOptions o, Guid d) =>
            {
                deleted = d;
                options = o;
            })
            .ReturnsAsync(result);

            var controller = new CommissionAllocationsController(service.Object, authService.Object);

            var actual = await controller.Delete(allocationId);

            Assert.Equal(allocationId, deleted);
            Assert.Equal(Scope.Branch, options.Scope);

            var okResult    = Assert.IsType <OkObjectResult>(actual);
            var returnValue = Assert.IsType <Result>(okResult.Value);

            Assert.Same(result, returnValue);
        }
Esempio n. 3
0
        public async Task Index()
        {
            var allocation = new CommissionAllocation()
            {
                Id                  = Guid.NewGuid(),
                FromClientId        = Guid.NewGuid(),
                ToClientId          = Guid.NewGuid(),
                PolicyIdCount       = 1,
                FromClientFirstName = "FN1",
                FromClientLastName  = "LN1",
            };

            var pagedItems = new PagedItems <CommissionAllocation>()
            {
                TotalItems = 1,
                Items      = new List <CommissionAllocation>()
                {
                    allocation
                }
            };

            var service     = new Mock <ICommissionAllocationService>();
            var authService = TestHelper.MockAuthenticationService(Scope.Branch);

            CommissionAllocationQueryOptions queryOptions = null;

            service.Setup(c => c.GetCommissionAllocations(It.IsAny <CommissionAllocationQueryOptions>()))
            .Callback((CommissionAllocationQueryOptions options) => queryOptions = options)
            .ReturnsAsync(pagedItems);

            var controller = new CommissionAllocationsController(service.Object, authService.Object);

            var result = await controller.Index("toClientId", "desc", 15, 2, $"fromClientId={allocation.FromClientId}");

            Assert.Equal(Scope.Branch, queryOptions.Scope.Scope);
            Assert.Equal("toClientId", queryOptions.SortOptions.Column);
            Assert.Equal(SortDirection.Descending, queryOptions.SortOptions.Direction);
            Assert.Equal(15, queryOptions.PageOptions.Size);
            Assert.Equal(2, queryOptions.PageOptions.Number);

            Assert.Equal(allocation.FromClientId, queryOptions.FromClientId.Single());

            var okResult    = Assert.IsType <OkObjectResult>(result);
            var returnValue = Assert.IsType <PagedItems <CommissionAllocation> >(okResult.Value);

            Assert.Same(pagedItems, returnValue);
        }
Esempio n. 4
0
        public async Task Update()
        {
            var allocation = new CommissionAllocationEdit()
            {
                Id           = Guid.NewGuid(),
                FromClientId = Guid.NewGuid(),
                ToClientId   = Guid.NewGuid(),
                PolicyIds    = new List <Guid>()
                {
                    Guid.NewGuid()
                }
            };

            var service     = new Mock <ICommissionAllocationService>();
            var authService = TestHelper.MockAuthenticationService(Scope.Branch);

            var result = new Result()
            {
                Success = true
            };

            ScopeOptions             options = null;
            CommissionAllocationEdit updated = null;

            service.Setup(c => c.UpdateCommissionAllocation(It.IsAny <ScopeOptions>(), It.IsAny <CommissionAllocationEdit>()))
            .Callback((ScopeOptions o, CommissionAllocationEdit i) =>
            {
                updated = i;
                options = o;
            })
            .ReturnsAsync(result);

            var controller = new CommissionAllocationsController(service.Object, authService.Object);

            var actual = await controller.Update(allocation.Id.Value, allocation);

            Assert.Same(allocation, updated);
            Assert.Equal(Scope.Branch, options.Scope);

            var okResult    = Assert.IsType <OkObjectResult>(actual);
            var returnValue = Assert.IsType <Result>(okResult.Value);

            Assert.Same(result, returnValue);
        }