Я пишу модульный тест для метода веб-API, который возвращает значение bool.
В настоящее время isUnique содержит код состояния 200 и значение true при выполнении следующей строки
var isUnique = controller.UniqueEmail(clientCompanyId, email);
Как сделатьЯ утверждаю это, потому что я получаю ошибку, не могу преобразовать IActionResult в ошибку bool, когда я делаю
Assert.False(isUnique);
Тест
[Fact]
public void Is_Not_UniqueEmail()
{
int clientCompanyId = 30;
string email = "test.co.uk";
var mockIdentityService = new Mock<IIdentityService>();
mockIdentityService.Setup(x => x.CheckUniqueEmail(It.IsAny<int>(), It.IsAny<string>()))
.Returns(true);
var controller = new SecurityController(mockIdentityService.Object, null, null, null, null);
var isUnique = controller.UniqueEmail(clientCompanyId, email);
Assert.False(isUnique);
}
Контроллер
[HttpGet]
[AllowAnonymous]
[Route("unique-email/{clientCompanyId:int}/{email}")]
public IActionResult UniqueEmail(int clientCompanyId, string email)
{
var isUnique = _identityService.CheckUniqueEmail(clientCompanyId, email);
if (isUnique)
{
return Ok(isUnique);
}
else
{
return NotFound(isUnique);
}
}