Skip to content

Instantly share code, notes, and snippets.

@johnmmoss
Created February 9, 2015 20:49
Show Gist options
  • Save johnmmoss/b61b617a6a3db6547734 to your computer and use it in GitHub Desktop.
Save johnmmoss/b61b617a6a3db6547734 to your computer and use it in GitHub Desktop.
Mocking the ASP.NET HttpSession with Rhino Mock
public void SetUpSession()
{
// Arrange
var httpContext = MockRepository.GenerateStub<HttpContextBase>();
var httpSession = MockRepository.GenerateStub<HttpSessionStateBase>();
httpContext.Stub(h => h.Session).Return(httpSession);
mock.Setup(p => p.HttpContext.Session).Returns(mockSession.Object);
// Now create the system under test
var repository = MockRepository.GenerateMock<Repository>();
var controller = new CustomerController(repository);
var controller.ControllerContext = new ControllerContext(httpContext, new RouteData(), _controller);
controller.Create();
// Assertions
Assert.AreEqual("testuser1", controller.HttpContext.Session["Username"]);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment