public async Task Should_Return_Calculated_Result_As_Response_For_Valid_Expression() { // Arrange _calculatorService.Setup(x => x.ValidateInput(It.IsAny <InputModel>())) .ReturnsAsync(true); _calculatorService.Setup(x => x.CalculateExpression(It.IsAny <InputModel>())) .ReturnsAsync(14); //Act var result = await _sut.CalculateExpression(new InputModel()) as OkObjectResult; //Assert _calculatorService.Verify(x => x.ValidateInput(It.IsAny <InputModel>()), Times.Once); Assert.IsNotNull(result); result.Value.Should().BeOfType <string>().Which.Should().Contain("14"); result.Should().BeOfType <OkObjectResult>().Which.StatusCode.Should().Be(200); }