Я прочитал пару сообщений на эту тему, но ни один из них не решает мою проблему напрямую.Когда вы тестируете метод синхронного контроллера, вы можете утверждать, что метод возвращает ожидаемый вами тип:
Assert.IsInstanceOfType(result,typeof(JsonResult));
Однако при тестировании методов асинхронного контроллера я смог только утверждать, что тип, возвращаемыйAsyncManager является правильным типом:
var result = controller.AsyncManager.Parameters["articles"];
// Assertions
Assert.IsNotNull(result);
Assert.IsInstanceOfType(result,typeof(IEnumerable<NewsArticle>));
Мне кажется, я должен проверить тип возврата метода Completed, который в моем случае является JsonResult:
public JsonResult GetPublishedNewsArticlesCompleted(IEnumerable<NewsArticle> articles)
{
return Json(articles, JsonRequestBehavior.AllowGet);
}
Но у меня естьне смог понять, как это сделать.Я прочитал пост Дино Эспозито , в котором он сказал, что «код xxxCompleted тривиален и, вероятно, даже не нуждается в тесте».Я не покупаю это.Метод Completed и его тип возврата - это то, что меня больше всего волнует в этом тесте.
Итак, мой вопрос: как мне проверить, что мой метод Completed фактически возвращает мне JsonResult?Или Дино прав, и мне все равно?
Спасибо.