Je le contrôleur suivant (simplifié):test de tests unitaires pour Ok Résultat
public async Task<IHttpActionResult> Profile(UpdateProfileModelAllowNulls modelNullable)
{
ServiceResult<ProfileModelDto> result = await _profileService.UpdateProfile(1);
return Ok(result);
}
Et:
public async Task<ServiceResult<ProfileModelDto>> UpdateProfile(ApplicationUserDto user, UpdateProfileModel profile)
{
//Do something...
}
et le test NUnit suivant:
[Test]
public async Task Post_Profile()
{
var result = _controller.Profile(new UpdateProfileModelAllowNulls() { Email = "[email protected]", DisplayName = "TestDisplay"}) as OkNegotiatedContentResult<Task<<ProfileModelDto>>;
Assert.IsNotNull(result);
}
Dans mon NUnit test, j'essaie de vérifier un résultat Ok en utilisant ce tutoriel https://www.asp.net/web-api/overview/testing-and-debugging/unit-testing-with-aspnet-web-api. Mon problème est que je ne peux pas convertir en OkNegotiatedContentResult
, je suppose que je ne passe pas dans le bon objet, mais je ne vois pas dans quel objet je devrais passer. Pour autant que je puisse voir, je passe l'objet correct par exemple: OkNegotiatedContentResult<Task<<ProfileModelDto>>;
mais cela ne fonctionne pas.
J'ai aussi essayé:
var result = _controller.Profile(new UpdateProfileModelAllowNulls() { Email = "[email protected]", DisplayName = "TestDisplay"}) as OkNegotiatedContentResult<Task<IHttpActionResult>>;
Mais cela ne fonctionne pas non plus.
Quelqu'un peut-il aider?
Obtenez-vous des erreurs? –
comme OkNegotiatedContentResult? –