diff --git a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultDisplayTemplatesTests.cs b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultDisplayTemplatesTests.cs index 8f1e05dd12..2aa2c0f2ef 100644 --- a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultDisplayTemplatesTests.cs +++ b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultDisplayTemplatesTests.cs @@ -39,7 +39,7 @@ namespace Microsoft.AspNet.Mvc.Core.Test public void ObjectTemplateDisplaysNullDisplayTextWhenObjectIsNull() { // Arrange - var html = DefaultTemplatesUtilities.GetHtmlHelper(null); + var html = DefaultTemplatesUtilities.GetHtmlHelper(); var metadata = new EmptyModelMetadataProvider() .GetMetadataForType(null, typeof(DefaultTemplatesUtilities.ObjectTemplateModel)); diff --git a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultEditorTemplatesTests.cs b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultEditorTemplatesTests.cs index 737e3af01b..258145e0aa 100644 --- a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultEditorTemplatesTests.cs +++ b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultEditorTemplatesTests.cs @@ -39,7 +39,7 @@ namespace Microsoft.AspNet.Mvc.Core.Test public void ObjectTemplateDisplaysNullDisplayTextWithNullModelAndTemplateDepthGreaterThanOne() { // Arrange - var html = DefaultTemplatesUtilities.GetHtmlHelper(null); + var html = DefaultTemplatesUtilities.GetHtmlHelper(); var metadata = new EmptyModelMetadataProvider() .GetMetadataForType(null, typeof(DefaultTemplatesUtilities.ObjectTemplateModel)); @@ -83,11 +83,15 @@ namespace Microsoft.AspNet.Mvc.Core.Test { // Arrange var expected = -@"
-
-
-
-"; +@"
" + +Environment.NewLine + +@"
" + +Environment.NewLine + +@"
" + +Environment.NewLine + +@"
" + +Environment.NewLine; + var model = new DefaultTemplatesUtilities.ObjectWithScaffoldColumn(); var viewEngine = new Mock(); viewEngine.Setup(v => v.FindPartialView(It.IsAny>(), It.IsAny())) diff --git a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultTemplatesUtilities.cs b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultTemplatesUtilities.cs index b99f42353a..524b75de3a 100644 --- a/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultTemplatesUtilities.cs +++ b/test/Microsoft.AspNet.Mvc.Core.Test/Rendering/DefaultTemplatesUtilities.cs @@ -16,7 +16,7 @@ using Microsoft.AspNet.Security.DataProtection; using Microsoft.Framework.OptionsModel; using Moq; -namespace Microsoft.AspNet.Mvc.Core.Test +namespace Microsoft.AspNet.Mvc.Core { public class DefaultTemplatesUtilities { @@ -43,14 +43,38 @@ namespace Microsoft.AspNet.Mvc.Core.Test public string Property3 { get; set; } } - public static HtmlHelper GetHtmlHelper(object model, - IViewEngine viewEngine = null) + public static HtmlHelper GetHtmlHelper() { - var provider = new DataAnnotationsModelMetadataProvider(); - var viewData = new ViewDataDictionary(provider); + return GetHtmlHelper(null); + } + + public static HtmlHelper GetHtmlHelper(TModel model) + { + return GetHtmlHelper(model, CreateViewEngine()); + } + + public static HtmlHelper GetHtmlHelper(IModelMetadataProvider provider) + { + return GetHtmlHelper(null, provider); + } + + public static HtmlHelper GetHtmlHelper(TModel model, IModelMetadataProvider provider) + { + return GetHtmlHelper(model, CreateViewEngine(), provider); + } + + public static HtmlHelper GetHtmlHelper(TModel model, IViewEngine viewEngine) + { + return GetHtmlHelper(model, viewEngine, new DataAnnotationsModelMetadataProvider()); + } + + public static HtmlHelper GetHtmlHelper( + TModel model, + IViewEngine viewEngine, + IModelMetadataProvider provider) + { + var viewData = new ViewDataDictionary(provider); viewData.Model = model; - viewData.ModelMetadata = - provider.GetMetadataForType(() => model, typeof(ObjectTemplateModel)); var httpContext = new Mock(); httpContext @@ -60,8 +84,6 @@ namespace Microsoft.AspNet.Mvc.Core.Test .Setup(o => o.Items) .Returns(new Dictionary()); - viewEngine = viewEngine ?? CreateViewEngine(); - var actionContext = new ActionContext(httpContext.Object, new RouteData(), new ActionDescriptor()); @@ -95,18 +117,23 @@ namespace Microsoft.AspNet.Mvc.Core.Test var viewContext = new ViewContext(actionContext, Mock.Of(), viewData, new StringWriter()); - var htmlHelper = new HtmlHelper( - viewEngine, - provider, - urlHelper, - GetAntiForgeryInstance(), - actionBindingContextProvider.Object); - htmlHelper.Contextualize(viewContext); - + // TemplateRenderer will Contextualize this transient service. serviceProvider .Setup(s => s.GetService(typeof(IHtmlHelper))) - .Returns(htmlHelper); + .Returns(() => new HtmlHelper( + viewEngine, + provider, + urlHelper, + GetAntiForgeryInstance(), + actionBindingContextProvider.Object)); + var htmlHelper = new HtmlHelper( + viewEngine, + provider, + urlHelper, + GetAntiForgeryInstance(), + actionBindingContextProvider.Object); + htmlHelper.Contextualize(viewContext); return htmlHelper; }