Example #1
0
        public async Task Then_Gets_PledgeReference_From_Mediator(
            long accountId,
            int pledgeId,
            int applicationId,
            GetApplicationApprovedQueryResult getApplicationApprovedQueryResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <GetApplicationApprovedQuery>((x) => x.ApplicationId == applicationId && x.PledgeId == pledgeId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(getApplicationApprovedQueryResult);

            var controllerResult = await pledgeController.ApplicationApproved(accountId, pledgeId, applicationId);

            var okObjectResult = controllerResult as OkObjectResult;
            var response       = okObjectResult.Value as GetApplicationApprovedResponse;

            Assert.IsNotNull(controllerResult);
            Assert.IsNotNull(okObjectResult);
            Assert.IsNotNull(response);
            Assert.AreEqual(okObjectResult.StatusCode, (int)HttpStatusCode.OK);
            Assert.AreEqual(response.EmployerAccountName, getApplicationApprovedQueryResult.EmployerAccountName);
        }
Example #2
0
        public async Task ClosePledge_Returns_NotFound(
            int pledgeId,
            SetClosePledgeRequest closePledgeRequest,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            var closePledgeResult = new ClosePledgeCommandResult
            {
                ErrorContent = string.Empty,
                StatusCode   = HttpStatusCode.NotFound
            };

            mockMediator
            .Setup(x => x.Send(
                       It.Is <ClosePledgeCommand>((x) => x.PledgeId == pledgeId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(closePledgeResult);

            var controllerResponse = await pledgeController.ClosePledge(pledgeId, closePledgeRequest);

            var statusResult = controllerResponse as StatusCodeResult;

            Assert.IsNotNull(statusResult);
            Assert.AreEqual((int)HttpStatusCode.NotFound, statusResult.StatusCode);
        }
Example #3
0
        public async Task Then_Gets_PledgeReference_From_Mediator(
            long accountId,
            CreatePledgeRequest createPledgeRequest,
            CreatePledgeResult createPledgeResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <CreatePledgeCommand>((x) => x.AccountId == accountId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(createPledgeResult);

            var controllerResult = await pledgeController.CreatePledge(accountId, createPledgeRequest);

            var createdResult   = controllerResult as CreatedResult;
            var pledgeReference = createdResult.Value as PledgeIdDto;

            Assert.IsNotNull(controllerResult);
            Assert.IsNotNull(createdResult);
            Assert.IsNotNull(pledgeReference);
            Assert.AreEqual(createdResult.StatusCode, (int)HttpStatusCode.Created);
            Assert.AreEqual(createdResult.Location, $"/accounts/{accountId}/pledges/{createPledgeResult.PledgeId}");
            Assert.AreEqual(pledgeReference.Id, createPledgeResult.PledgeId);
        }
Example #4
0
        public void SetUp()
        {
            _mediator    = new Mock <IMediator>();
            _queryResult = _fixture.Create <GetSectorQueryResult>();
            _mediator.Setup(x => x.Send(It.IsAny <GetSectorQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(_queryResult);

            _controller = new PledgeController(_mediator.Object, Mock.Of <ILogger <PledgeController> >());
        }
Example #5
0
        public void Setup()
        {
            _accountId     = _fixture.Create <long>();
            _pledgeId      = _fixture.Create <int>();
            _applicationId = _fixture.Create <int>();
            _setApplicationOutcomeRequest = _fixture.Create <SetApplicationOutcomeRequest>();

            _mediator = new Mock <IMediator>();

            _controller = new PledgeController(_mediator.Object, Mock.Of <ILogger <PledgeController> >());
        }
Example #6
0
        public void SetUp()
        {
            _encodedAccountId = _fixture.Create <string>();

            _mediator    = new Mock <IMediator>();
            _queryResult = _fixture.Create <GetAmountQueryResult>();
            _mediator.Setup(x => x.Send(It.Is <GetAmountQuery>(q => q.EncodedAccountId == _encodedAccountId), It.IsAny <CancellationToken>()))
            .ReturnsAsync(_queryResult);

            _controller = new PledgeController(_mediator.Object, Mock.Of <ILogger <PledgeController> >());
        }
Example #7
0
        public async Task ClosePledge_Returns_Error(
            int pledgeId,
            SetClosePledgeRequest closePledgeRequest,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <ClosePledgeCommand>((x) => x.PledgeId == pledgeId),
                       It.IsAny <CancellationToken>()))
            .Throws(new InvalidOperationException());

            var controllerResponse = await pledgeController.ClosePledge(pledgeId, closePledgeRequest);

            var exception = controllerResponse as StatusCodeResult;

            Assert.IsNotNull(exception);
            Assert.AreEqual((int)HttpStatusCode.InternalServerError, exception.StatusCode);
        }
Example #8
0
        public async Task And_Mediator_Doesnt_Return_Result_Then_Return_NotFound(
            int pledgeId,
            int applicationId,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <GetApplicationQuery>(y => y.ApplicationId == applicationId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync((GetApplicationResult)null);

            var controllerResult = await pledgeController.Application(pledgeId, applicationId);

            var notFoundResult = controllerResult as NotFoundResult;

            Assert.IsNotNull(controllerResult);
            Assert.IsNotNull(notFoundResult);
            Assert.AreEqual(notFoundResult.StatusCode, (int)HttpStatusCode.NotFound);
        }
Example #9
0
        public async Task And_Mediator_Returns_Result_Then_Return_Response_And_Ok(
            int pledgeId,
            int applicationId,
            GetApplicationResult getApplicationResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <GetApplicationQuery>(y => y.ApplicationId == applicationId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(getApplicationResult);

            var controllerResult = await pledgeController.Application(pledgeId, applicationId);

            var createdResult          = controllerResult as OkObjectResult;
            var getApplicationResponse = createdResult.Value as GetApplicationResponse;

            Assert.IsNotNull(controllerResult);
            Assert.IsNotNull(createdResult);
            Assert.IsNotNull(getApplicationResponse);
            Assert.AreEqual(createdResult.StatusCode, (int)HttpStatusCode.OK);
        }
        public async Task Reject_Applications_Performs_Bulk_Applications_Rejection_With_Status_Ok(
            int accountId,
            int pledgeId,
            RejectApplicationsRequest applicationRejectRequest,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] PledgeController pledgeController)
        {
            mockMediator
            .Setup(x => x.Send(
                       It.Is <RejectApplicationsCommand>((x) => (x.PledgeId == pledgeId) && (x.AccountId == accountId)),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(Unit.Value);

            applicationRejectRequest.ApplicationsToReject = new List <int> {
                5
            };

            var controllerResponse = await pledgeController.RejectApplications(accountId, pledgeId, applicationRejectRequest);

            var statusResult = controllerResponse as StatusCodeResult;

            Assert.IsNotNull(statusResult);
            Assert.AreEqual((int)HttpStatusCode.OK, statusResult.StatusCode);
        }