public void Activate_Throws_WhenViewDataPropertyHasIncorrectType() { // Arrange var activator = new RazorPageActivator(new EmptyModelMetadataProvider()); var instance = new HasIncorrectViewDataPropertyType(); var collection = new ServiceCollection(); collection .AddSingleton <HtmlEncoder>(new HtmlTestEncoder()) .AddSingleton <DiagnosticSource>(new DiagnosticListener("Microsoft.AspNetCore.Mvc")); var httpContext = new DefaultHttpContext { RequestServices = collection.BuildServiceProvider(), }; var actionContext = new ActionContext(httpContext, new RouteData(), new ActionDescriptor()); var viewContext = new ViewContext( actionContext, Mock.Of <IView>(), new ViewDataDictionary(new EmptyModelMetadataProvider()), Mock.Of <ITempDataDictionary>(), TextWriter.Null, new HtmlHelperOptions()); // Act & Assert Assert.Throws <InvalidCastException>(() => activator.Activate(instance, viewContext)); }
public void Activate_Throws_WhenViewDataPropertyHasIncorrectType() { // Arrange var activator = CreateActivator(); var viewData = new ViewDataDictionary <MyModel>(MetadataProvider, new ModelStateDictionary()); var viewContext = CreateViewContext(viewData); var instance = new HasIncorrectViewDataPropertyType(); // Act & Assert Assert.Throws <InvalidCastException>(() => activator.Activate(instance, viewContext)); }
public void Activate_Throws_WhenViewDataPropertyHasIncorrectType() { // Arrange var modelMetadataProvider = new EmptyModelMetadataProvider(); var modelExpressionProvider = new ModelExpressionProvider(modelMetadataProvider, new ExpressionTextCache()); var activator = new RazorPageActivator( modelMetadataProvider, new UrlHelperFactory(), new JsonHelper( new JsonOutputFormatter(new JsonSerializerSettings(), ArrayPool <char> .Shared), ArrayPool <char> .Shared), new DiagnosticListener("Microsoft.AspNetCore.Mvc"), new HtmlTestEncoder(), modelExpressionProvider); var instance = new HasIncorrectViewDataPropertyType(); var collection = new ServiceCollection(); collection.AddSingleton(new ExpressionTextCache()); var httpContext = new DefaultHttpContext { RequestServices = collection.BuildServiceProvider(), }; var actionContext = new ActionContext(httpContext, new RouteData(), new ActionDescriptor()); var viewContext = new ViewContext( actionContext, Mock.Of <IView>(), new ViewDataDictionary(new EmptyModelMetadataProvider(), new ModelStateDictionary()), Mock.Of <ITempDataDictionary>(), TextWriter.Null, new HtmlHelperOptions()); // Act & Assert Assert.Throws <InvalidCastException>(() => activator.Activate(instance, viewContext)); }