public async Task PostAsync_ReturnsOkObjectResult_ForValidRequestData() { // Arrange var requestData = _refundOfNotionalTaxControllerTestDataGenerator.GetValidRequestData(); // Setup var responseData = _refundOfNotionalTaxControllerTestDataGenerator.GetValidResponseData(); _mockService.Setup(s => s.PerformRefundOfNotionalTaxCalculationAsync(requestData, _confOptions)) .ReturnsAsync(responseData); // Act var refundOfNotionalTaxController = new RefundOfNotionalTaxController(_mockService.Object, _mockLogger.Object, _confOptions); // Assert var result = await refundOfNotionalTaxController.PostAsync(requestData); var okObjectResult = result.Should().BeOfType <OkObjectResult>().Subject; var statusCode = okObjectResult.StatusCode.Should().Be((int)HttpStatusCode.OK); _mockLogger.Verify(x => x.Log( LogLevel.Information, It.IsAny <EventId>(), It.Is <object>(v => v.ToString().Contains("Calculation performed successfully for the request data provided")), null, It.IsAny <Func <object, Exception, string> >() )); }
public async Task PostAsync_ReturnsBadRequest_ForNullRequestData() { // Arrange var requestData = _refundOfNotionalTaxControllerTestDataGenerator.GetNullPayload(); // Act var refundOfNotionalTaxController = new RefundOfNotionalTaxController(_mockService.Object, _mockLogger.Object, _confOptions); // Assert var result = await refundOfNotionalTaxController.PostAsync(requestData); var badRequestObjectRequest = result.Should().BeOfType <BadRequestObjectResult>().Subject; badRequestObjectRequest.StatusCode.Should().Be((int)System.Net.HttpStatusCode.BadRequest); _mockLogger.Verify(x => x.Log( LogLevel.Error, It.IsAny <EventId>(), It.Is <object>(v => v.ToString().Contains("Bad payload")), null, It.IsAny <Func <object, Exception, string> >() )); }
public void PingGet_ReturnsSuccess() { //Arrange var refundOfNotionalTaxController = new RefundOfNotionalTaxController(_mockService.Object, _mockLogger.Object, _confOptions); //Act var result = refundOfNotionalTaxController.Get(); //Assert var contentResult = result.Should().BeOfType <ContentResult>().Subject; contentResult.StatusCode.Should().Be((int)System.Net.HttpStatusCode.OK); contentResult.Content.Should().Be("PingGet response from RPS Api RefundOfNotionalTax"); }