ActionResult
部分ビューを返すをテストしようとしています。このアクションは、ユーザーが IE7 または IE8 を使用しているかどうかを確認し、ユーザーが IE7 または 8 を使用している場合は別のパーシャルを返します。別の方法で扱います。
に集中したいので、モデルの作成は省きましたRequest.Browser.Type
。
public ActionResult ActionName(string listing)
{
if (model.Count > 1 && Request.Browser.Type != "IE8" && Request.Browser.Type != "IE7")
{
return PartialView("~/Areas/Features/Views/Video/MultiVideo.cshtml", model);
}
return PartialView("~/Areas/Features/Views/Video/SingleVideo.cshtml", model.FirstOrDefault());
}
最終的に2つのことを知りたい
- どうすればifをモックできます
Request.Browser.Type
か? - コントローラー内でこれを行うのは良い習慣ですか? そうでない場合、どのソリューションがより良いでしょうか?
私が試したこと:
var browser = new Mock<HttpContext>(MockBehavior.Strict);
browser.Setup(x => x.Request.Browser).Returns("IE9");