Posts

Unit test c#: Create Fake Httpcontext to bypass Null exception for User object

Image
Microsoft Visual studio Test Framework Requirement: Nuget package Moq 4.13.0.0 (or later) Settings in visual studio: Menu->Tools->Options ->Debugging->General Tick "Use Managed Compatibility Mode" Code: (copied from stackoverflow) Step 1:  Create a new class FakeHttpContext and paste the below code. Change the Returns value to whatever user name you need. public static class FakeHttpContext     {         public static void SetFakeContext(this Controller controller)         {             var httpContext = MakeFakeContext();             ControllerContext context =             new ControllerContext(             new RequestContext(httpContext,             new RouteData()), controller);             controller.ControllerContext = context;         }         private static HttpContextBase MakeFakeContext()         {             var context = new Mock<HttpContextBase>();             var request = new Mock<HttpRequestBase>();             var response = new Mock&