Beispiel #1
0
        public async Task GivenValidedInput_GatewayReceivesCorrectInput()
        {
            //arrange
            var tenancyAgreementRef = "Test";

            _fakeGateway.Setup(s => s.CreateActionDiaryEntryAsync(It.Is <ArrearsActionCreateRequest>(i => i.ArrearsAction.TenancyAgreementRef.Equals("Test"))))
            .ReturnsAsync(new ArrearsActionResponse
            {
                Success       = true,
                ArrearsAction = new ArrearsActionLogDto
                {
                    TenancyAgreementRef = tenancyAgreementRef
                }
            });
            var request = new ArrearsActionCreateRequest
            {
                ArrearsAction = new ArrearsActionInfo
                {
                    TenancyAgreementRef = tenancyAgreementRef
                }
            };
            //act
            var response = await _classUnderTest.ExecuteAsync(request);

            //assert
            _fakeGateway.Verify(v => v.CreateActionDiaryEntryAsync(It.Is <ArrearsActionCreateRequest>(i => i.ArrearsAction.TenancyAgreementRef.Equals("Test"))));
        }
Beispiel #2
0
        public async Task <IActionResult> Post([FromBody][Required] ArrearsActionCreateRequest request)
        {
            if (!request.IsValid())
            {
                return(BadRequest());
            }

            var response = await _createArrearsActionDiaryUseCase.ExecuteAsync(request);

            if (!response.Success)
            {
                return(StatusCode(500, response));
            }
            return(Ok(response));
        }