public void CreateController_WithNullContext_ThrowsException() { SystemManager.RunWithHttpContext(null, () => { var layoutTemplateBuilder = new LayoutRenderer(); layoutTemplateBuilder.CreateController(); }); }
public void CreateController_WithDummyContext_CreatesControllerInstance() { // Arrange var layoutTemplateBuilder = new LayoutRenderer(); // Act Controller dummyController = null; SystemManager.RunWithHttpContext(this.context, () => { dummyController = layoutTemplateBuilder.CreateController(); }); // Assert this.AssertControllerHasValidContext(dummyController); Assert.AreEqual(dummyController.ControllerContext.RouteData.Values["controller"].ToString(), "generic", "The controller name is not added in the RouteData collection."); }
/// <summary> /// Creates a cache dependency based on the specified virtual paths. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The path to the primary virtual resource.</param> /// <returns> /// A <see cref="T:System.Web.Caching.CacheDependency"/> object for the specified virtual resources. /// </returns> public CacheDependency GetCacheDependency(PathDefinition definition, string virtualPath, IEnumerable virtualPathDependencies, DateTime utcStart) { virtualPath = this.virtualPathBuilder.RemoveParams(virtualPath); virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var layoutVirtualPathBuilder = new LayoutVirtualPathBuilder(); string viewName = layoutVirtualPathBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) return null; var viewPath = layoutTemplateBuilder.LayoutViewPath(viewName); return HostingEnvironment.VirtualPathProvider.GetCacheDependency(viewPath, virtualPathDependencies, utcStart); }
/// <summary> /// Determines whether a file with the specified virtual path exists. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The virtual path to check.</param> public virtual bool Exists(PathDefinition definition, string virtualPath) { virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var vpBuilder = new LayoutVirtualPathBuilder(); string viewName = vpBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) return false; if (virtualPath.StartsWith(string.Format("~/{0}", LayoutVirtualFileResolver.ResolverPath))) return layoutTemplateBuilder.LayoutExists(viewName); else return false; }
/// <summary> /// Determines whether a file with the specified virtual path exists. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The virtual path to check.</param> public virtual bool Exists(PathDefinition definition, string virtualPath) { virtualPath = this.virtualPathBuilder.RemoveParams(virtualPath); virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var layoutVirtualPathBuilder = new LayoutVirtualPathBuilder(); string viewName = layoutVirtualPathBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) return false; if (virtualPath.StartsWith(string.Format(System.Globalization.CultureInfo.InvariantCulture, "~/{0}", LayoutVirtualFileResolver.ResolverPath), StringComparison.Ordinal)) return layoutTemplateBuilder.LayoutExists(viewName); else return false; }
/// <summary> /// Creates a cache dependency based on the specified virtual paths. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The path to the primary virtual resource.</param> /// <returns> /// A <see cref="T:System.Web.Caching.CacheDependency"/> object for the specified virtual resources. /// </returns> public CacheDependency GetCacheDependency(PathDefinition definition, string virtualPath, IEnumerable virtualPathDependencies, DateTime utcStart) { virtualPath = this.virtualPathBuilder.RemoveParams(virtualPath); virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var layoutVirtualPathBuilder = new LayoutVirtualPathBuilder(); string viewName = layoutVirtualPathBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) { return(null); } var viewPath = layoutTemplateBuilder.LayoutViewPath(viewName); return(HostingEnvironment.VirtualPathProvider.GetCacheDependency(viewPath, virtualPathDependencies, utcStart)); }
/// <summary> /// Determines whether a file with the specified virtual path exists. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The virtual path to check.</param> public virtual bool Exists(PathDefinition definition, string virtualPath) { virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var vpBuilder = new LayoutVirtualPathBuilder(); string viewName = vpBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) { return(false); } if (virtualPath.StartsWith(string.Format("~/{0}", LayoutVirtualFileResolver.ResolverPath))) { return(layoutTemplateBuilder.LayoutExists(viewName)); } else { return(false); } }
/// <summary> /// Determines whether a file with the specified virtual path exists. /// </summary> /// <param name="definition">The definition.</param> /// <param name="virtualPath">The virtual path to check.</param> public virtual bool Exists(PathDefinition definition, string virtualPath) { virtualPath = this.virtualPathBuilder.RemoveParams(virtualPath); virtualPath = VirtualPathUtility.ToAppRelative(virtualPath); var layoutVirtualPathBuilder = new LayoutVirtualPathBuilder(); string viewName = layoutVirtualPathBuilder.GetLayoutName(definition, virtualPath); var layoutTemplateBuilder = new LayoutRenderer(); if (string.IsNullOrEmpty(viewName)) { return(false); } if (virtualPath.StartsWith(string.Format(System.Globalization.CultureInfo.InvariantCulture, "~/{0}", LayoutVirtualFileResolver.ResolverPath), StringComparison.Ordinal)) { return(layoutTemplateBuilder.LayoutExists(viewName)); } else { return(false); } }
public void CreateController_WithDummyContext_CreatesControllerInstance() { var context = new HttpContextWrapper(new HttpContext( new HttpRequest(null, "http://tempuri.org", null), new HttpResponse(null))); context.Items["CurrentResourcePackage"] = "test"; var layoutTemplateBuilder = new LayoutRenderer(); Controller dummyController = null; SystemManager.RunWithHttpContext(context, () => { dummyController = layoutTemplateBuilder.CreateController(); }); Assert.IsNotNull(dummyController); Assert.IsTrue(dummyController != null); Assert.IsTrue(dummyController.ControllerContext != null); Assert.IsTrue(dummyController.ControllerContext.RouteData != null); Assert.IsTrue(dummyController.ControllerContext.RouteData.Values != null); Assert.IsTrue(dummyController.ControllerContext.RouteData.Values.ContainsKey("controller")); Assert.IsTrue(dummyController.ControllerContext.RouteData.Values["controller"] != null); Assert.AreEqual<string>(dummyController.ControllerContext.RouteData.Values["controller"].ToString(), "generic"); }
private string RenderLayout(string pageTemplateName, bool placeholdersOnly) { var layoutTemplateBuilder = new LayoutRenderer(); return(layoutTemplateBuilder.GetLayoutTemplate(pageTemplateName, placeholdersOnly)); }
private string RenderLayout(string pageTemplateName, bool placeholdersOnly) { var layoutTemplateBuilder = new LayoutRenderer(); return layoutTemplateBuilder.GetLayoutTemplate(pageTemplateName, placeholdersOnly); }
/// <summary> /// Renders the layout. /// </summary> /// <param name="layoutFileName">Filename of the layout.</param> /// <returns>Rendered layout as HTML.</returns> private string RenderLayout(string pageTemplateName) { var layoutTemplateBuilder = new LayoutRenderer(); return(layoutTemplateBuilder.GetLayoutTemplate(pageTemplateName)); }
/// <summary> /// Renders the layout. /// </summary> /// <param name="layoutFileName">Filename of the layout.</param> /// <returns>Rendered layout as HTML.</returns> private string RenderLayout(string pageTemplateName) { var layoutTemplateBuilder = new LayoutRenderer(); return layoutTemplateBuilder.GetLayoutTemplate(pageTemplateName); }