0
メソッド内でセッションを作成するメソッドをテストする方法。私はユニットテストをするために使用します。テストケースを使用してメソッドを呼び出すと、メソッド内でセッションを作成できませんでした。誰もが、私は、コードを次が、それはあなたがヘルパーにセッション変数の設定を入れることができますセッションを作成するMoqを使用してメソッドをユニットテストする方法
[TestMethod]
public void InviteUser_ExpectRedirectActionResultReturned()
{
//Arrange
controller = new AccountController();
var mockControllerContext = new Mock<ControllerContext>();
var mockSession = new Mock<HttpSessionStateBase>();
mockSession.SetupGet(s => s["verification_uid"]).Returns("123"); //somevalue
mockControllerContext.Setup(p => p.HttpContext.Session).Returns(mockSession.Object);
controller.ControllerContext = mockControllerContext.Object;
var id = "1";
System.Web.HttpContext.Current.Session["verification_uidID"] = "12";
//Act
var result = (RedirectToRouteResult)controller.InviteUser(id);
//Assert
result.RouteValues["action"].Equals("Index");
result.RouteValues["controller"].Equals("Home");
Assert.AreEqual("Index", result.RouteValues["action"]);
Assert.AreEqual("Home", result.RouteValues["controller"]);
}
私たちはアプリケーションでサービスを使用していないため、サービスベースのアーキテクチャを使用せずに行うことができます。これは簡単なWebベースのアプリケーションです。 –
@CharanTejaKutaなぜこれがサービスと関係していると思いますか分かりません。これは単にヘルパーをクラスのコンストラクタに渡しているので、嘲笑されることがあります。 – Freakshow