protected override void OnInit(EventArgs e) { base.OnInit(e); try { HttpContextBase httpContext = new HttpContextWrapper(HttpContext.Current); var moduleExecutionEngine = GetModuleExecutionEngine(); _result = moduleExecutionEngine.ExecuteModule(GetModuleRequestContext(httpContext)); ModuleActions = LoadActions(_result); httpContext.SetModuleRequestResult(_result); //if (_result != null) //{ // Controls.Add(new LiteralControl(RenderModule(_result).ToString())); //} } catch (Exception exc) { Exceptions.ProcessModuleLoadException(this, exc); } }
private void RenderModule(ModuleRequestResult moduleResult) { var writer = this.RequestContext.HttpContext.Response.Output; var moduleExecutionEngine = ComponentFactory.GetComponent <IModuleExecutionEngine>(); moduleExecutionEngine.ExecuteModuleResult(moduleResult, writer); }
public void HasModuleRequestResult_Returns_True_If_Present() { // Arrange HttpContextBase httpContext = MockHelper.CreateMockHttpContext(); var expectedResult = new ModuleRequestResult(); httpContext.Items[HttpContextExtensions.ModuleRequestResultKey] = expectedResult; //Act and Assert Assert.IsTrue(httpContext.HasModuleRequestResult()); }
private static void SetupMockModuleApplication(ControllerContext context, ViewEngineCollection engines) { var mockApp = new Mock <ModuleApplication>(); mockApp.Object.ViewEngines = engines; (context.Controller as IDnnController).ViewEngineCollectionEx = engines; var activeModuleRequest = new ModuleRequestResult { ModuleApplication = mockApp.Object }; context.HttpContext.SetModuleRequestResult(activeModuleRequest); }
public void GetModuleRequestResult_Returns_ModuleRequestResult_If_Present() { //Arrange var httpContext = MockHelper.CreateMockHttpContext(); var expectedResult = new ModuleRequestResult(); httpContext.Items[HttpContextExtensions.ModuleRequestResultKey] = expectedResult; //Act var result = httpContext.GetModuleRequestResult(); //Assert Assert.AreSame(expectedResult, result); }
private MvcHtmlString RenderModule(ModuleRequestResult moduleResult) { MvcHtmlString moduleOutput; using (var writer = new StringWriter(CultureInfo.CurrentCulture)) { var moduleExecutionEngine = ComponentFactory.GetComponent <IModuleExecutionEngine>(); moduleExecutionEngine.ExecuteModuleResult(moduleResult, writer); moduleOutput = MvcHtmlString.Create(writer.ToString()); } return(moduleOutput); }
public void ExecuteModule_Returns_Null_If_Application_Is_Null() { // Arrange var engine = new ModuleExecutionEngine(); var requestContext = new ModuleRequestContext() { ModuleApplication = null }; // Act ModuleRequestResult result = engine.ExecuteModule(requestContext); // Assert Assert.IsNull(result); }
public void SetModuleRequestResult_Sets_ModuleRequestResult() { // Arrange HttpContextBase context = MockHelper.CreateMockHttpContext(); var expectedResult = new ModuleRequestResult(); // Act context.SetModuleRequestResult(expectedResult); // Assert var actual = context.Items[HttpContextExtensions.ModuleRequestResultKey]; Assert.IsNotNull(actual); Assert.IsInstanceOf <ModuleRequestResult>(actual); }
private ModuleActionCollection LoadActions(ModuleRequestResult result) { var actions = new ModuleActionCollection(); if (result.ModuleActions != null) { foreach (ModuleAction action in result.ModuleActions) { action.ID = this.ModuleContext.GetNextActionID(); actions.Add(action); } } return(actions); }
protected void ExecuteModule() { try { HttpContextBase httpContext = new HttpContextWrapper(HttpContext.Current); var moduleExecutionEngine = this.GetModuleExecutionEngine(); this._result = moduleExecutionEngine.ExecuteModule(this.GetModuleRequestContext(httpContext)); this.ModuleActions = this.LoadActions(this._result); httpContext.SetModuleRequestResult(this._result); } catch (Exception exc) { Exceptions.ProcessModuleLoadException(this, exc); } }
public void ExecuteRequest_ReleasesController_After_Executing() { // Arrange var app = new ModuleApplication(); var controller = new Mock <IDnnController>(); var controllerFactory = SetupControllerFactory(controller.Object); app.ControllerFactory = controllerFactory.Object; ModuleRequestContext moduleRequestContext = CreateModuleContext(ControllerName, ActionName); // Act ModuleRequestResult result = app.ExecuteRequest(moduleRequestContext); // Assert controllerFactory.Verify(cf => cf.ReleaseController(controller.Object)); }
protected override void OnInit(EventArgs e) { base.OnInit(e); try { HttpContextBase httpContext = new HttpContextWrapper(HttpContext.Current); var moduleExecutionEngine = GetModuleExecutionEngine(); _result = moduleExecutionEngine.ExecuteModule(GetModuleRequestContext(httpContext)); ModuleActions = LoadActions(_result); httpContext.SetModuleRequestResult(_result); } catch (Exception exc) { Exceptions.ProcessModuleLoadException(this, exc); } }
public void ExecuteModule_Returns_Result_Of_Executing_ModuleApplication() { // Arrange var engine = new ModuleExecutionEngine(); var expected = new ModuleRequestResult(); var moduleApp = new Mock <ModuleApplication>(); moduleApp.Setup(app => app.ExecuteRequest(It.IsAny <ModuleRequestContext>())) .Returns(expected); var requestContext = new ModuleRequestContext() { ModuleApplication = moduleApp.Object }; // Act ModuleRequestResult actual = engine.ExecuteModule(requestContext); // Assert Assert.AreSame(expected, actual); }
public void ExecuteModuleResult_Calls_IDnnViewResult_ExecuteResult() { // Arrange var engine = new ModuleExecutionEngine(); var actionResultMock = new Mock <ActionResult>(); var viewResultMock = actionResultMock.As <IDnnViewResult>(); var controllerContext = MockHelper.CreateMockControllerContext(); var moduleRequestResult = new ModuleRequestResult { ActionResult = actionResultMock.Object, ControllerContext = controllerContext, }; // Act engine.ExecuteModuleResult(moduleRequestResult, new StringWriter()); // Arrange viewResultMock.Verify(v => v.ExecuteResult(It.IsAny <ControllerContext>(), It.IsAny <TextWriter>())); }
public void ExecuteRequest_Executes_Constructed_Controller_And_Provides_RequestContext() { // Arrange var app = new ModuleApplication(); var controller = new Mock <IController>(); controller.As <IDnnController>(); var controllerFactory = SetupControllerFactory(controller.Object); app.ControllerFactory = controllerFactory.Object; ModuleRequestContext moduleRequestContext = CreateModuleContext(ControllerName, ActionName); // Act ModuleRequestResult result = app.ExecuteRequest(moduleRequestContext); // Assert controller.Verify(c => c.Execute(It.Is <RequestContext>(rc => rc.HttpContext == moduleRequestContext.HttpContext && rc.RouteData.GetRequiredString("controller") == ControllerName))); }
public void ExecuteRequest_Returns_Result_And_ControllerContext_From_Controller() { // Arrange var app = new ModuleApplication(); ControllerContext controllerContext = MockHelper.CreateMockControllerContext(); ActionResult actionResult = new Mock <ActionResult>().Object; var controller = SetupMockController(actionResult, controllerContext); var controllerFactory = SetupControllerFactory(controller.Object); app.ControllerFactory = controllerFactory.Object; ModuleRequestContext moduleRequestContext = CreateModuleContext(ControllerName, ActionName); // Act ModuleRequestResult result = app.ExecuteRequest(moduleRequestContext); // Assert Assert.AreSame(actionResult, result.ActionResult); Assert.AreSame(controllerContext, result.ControllerContext); }
public static void SetModuleRequestResult(this HttpContextBase context, ModuleRequestResult moduleRequestResult) { context.Items[ModuleRequestResultKey] = moduleRequestResult; }