public async Task Index_WhenCalled_ReturnsAContentResultWithAWelcomeMessage() { // Arrange var controller = new MailController(null); // Act var result = await controller.Index(); // Assert result.Should().BeOfType <ContentResult>().Which.Content.Should().Be("Welcome to the backend mail API"); }
public async Task IndexPost_WhenModelStateIsValid_ReturnsMailResponseModel() { // Arrange var mockMailService = new Mock <IMailService>(); mockMailService.Setup(m => m.Send(It.IsAny <MailModel>())).ReturnsAsync(() => new MailResponseModel()); var mailController = new MailController(mockMailService.Object); var mailModel = new MailModel(); // Act var result = await mailController.Index(mailModel); // Assert result.Should().BeOfType <OkObjectResult>().Which.Value.Should().BeOfType <MailResponseModel>(); }
public async Task IndexPost_WhenModelStateIsInvalid_ReturnsBadRequestResult() { // Arrange var mockMailService = new Mock <IMailService>(); var mailController = new MailController(mockMailService.Object); mailController.ModelState.AddModelError("From", "Required"); var mailModel = new MailModel(); // Act var result = await mailController.Index(mailModel); // Assert result.Should().BeOfType <BadRequestObjectResult>().Which.Value.Should().BeOfType <SerializableError>(); }