【发布时间】:2013-10-04 15:31:20
【问题描述】:
根据 scott hanselman 的模拟示例 http://www.hanselman.com/blog/ASPNETMVCSessionAtMix08TDDAndMvcMockHelpers.aspx,我尝试使用 MockHelpers 作为下面的代码 sn-p 来模拟 httpcontext
controller = GetAccountController();
ActionResult result = controller.ChangePassword();
HttpContextBase hb = MvcMockHelpers.FakeHttpContext("~/Account/ChangePassword");
hb.Session.Add("id", 5);
// Assert Assert.AreEqual(5, (int)hb.Session["id"]);
我注意到没有添加会话,也没有收到任何错误。会话对象的属性值低于
Count = 0, CodePage = 0, Content = null, IsCookieLess = null, IsNewSession = null, IsReadOnly = null, IsSynchronized = null, Keys = null, LCID = 0, Mode = off, SessionId = null, 静态对象 = null, SynRoot = null, TimeOut = 0
对于 Rhino mock 和 Moq,我得到了相同的结果。
请告诉我如何将会话添加到模拟 httpcontext。
提前致谢。
【问题讨论】: