GivenPayerPayeeServiceReturnsPayers_WhenGetAutocompletePayerInvoked_ThenReturns200OKWithCorrectList() { var inputName = "test"; var payers = new List <PayerPayeeViewModel> { new() { PayerPayeeId = Guid.NewGuid(), ExternalId = "id123", PayerPayeeName = "test123" }, new() { PayerPayeeId = Guid.NewGuid(), ExternalId = "id1234", PayerPayeeName = "test1234" } }; _mockService.Setup(service => service.AutocompletePayer(inputName)).ReturnsAsync(() => payers); var controller = new PayersPayeesController(_mockService.Object); var response = await controller.GetAutocompletePayer(inputName); var objectResponse = Assert.IsType <OkObjectResult>(response); Assert.Equal(StatusCodes.Status200OK, objectResponse.StatusCode); Assert.Equal(payers, objectResponse.Value); }
public async Task GivenWhitespaceInputName_WhenGetAutocompletePayerInvoked_ThenReturns400BadRequest() { var controller = new PayersPayeesController(_mockService.Object); var response = await controller.GetAutocompletePayer(""); Assert.IsType <BadRequestResult>(response); }
public async Task GivenPayerPayeeServiceReturnsObject_WhenGetPayeesInvoked_ThenReturns200OKWithCorrectList() { var payees = new List <PayerPayeeViewModel> { new() { PayerPayeeId = Guid.NewGuid(), ExternalId = "id123", PayerPayeeName = "test name1" }, new() { PayerPayeeId = Guid.NewGuid(), ExternalId = "id1234", PayerPayeeName = "test name1" } }; _mockService.Setup(service => service.GetPayees()).ReturnsAsync(() => payees); var controller = new PayersPayeesController(_mockService.Object); var response = await controller.GetPayees(); var objectResponse = Assert.IsType <OkObjectResult>(response); Assert.Equal(StatusCodes.Status200OK, objectResponse.StatusCode); Assert.Equal(payees, objectResponse.Value); }
public async Task GivenNoErrors_WhenPostPayeeInvoked_Then200OKReturnedWithCorrectObject() { var name = "test name"; var externalId = "test external id"; var dto = new CreatePayerPayeeDto { Name = name, ExternalId = externalId }; var expectedViewModel = new PayerPayeeViewModel { ExternalId = externalId, PayerPayeeName = name, PayerPayeeId = Guid.NewGuid() }; _mockService.Setup(service => service.CreatePayee(dto)).ReturnsAsync(() => expectedViewModel); var controller = new PayersPayeesController(_mockService.Object); var response = await controller.PostPayee(dto); var objectResponse = Assert.IsType <OkObjectResult>(response); Assert.Equal(StatusCodes.Status200OK, objectResponse.StatusCode); Assert.Equal(expectedViewModel, objectResponse.Value); }
GivenValidCreatePayerPayeeDto_WhenPostPayeeInvoked_ThenPayerPayeeServiceCreatePayeeCalledWithCorrectDto() { var dto = new CreatePayerPayeeDto { Name = "test name", ExternalId = "test external id" }; var controller = new PayersPayeesController(_mockService.Object); await controller.PostPayee(dto); _mockService.Verify(service => service.CreatePayee(dto)); }
GivenValidPayerPayeeIdAndPayerPayeeServiceReturnsObject_WhenGetPayeeInvoked_ThenReturns200OKWithCorrectPayee() { var expectedPayee = new PayerPayeeViewModel { ExternalId = "externalId", PayerPayeeId = Guid.NewGuid(), PayerPayeeName = "name" }; _mockService.Setup(service => service.GetPayee(It.IsAny <Guid>())).ReturnsAsync(() => expectedPayee); var controller = new PayersPayeesController(_mockService.Object); var response = await controller.GetPayee(Guid.NewGuid()); var objectResponse = Assert.IsType <OkObjectResult>(response); Assert.Equal(StatusCodes.Status200OK, objectResponse.StatusCode); Assert.Equal(expectedPayee, objectResponse.Value); }