public void DefaultViewComponentActivatorSetsModelAsNull() { // Arrange var activator = new DefaultViewComponentActivator(); var helper = Mock.Of <IHtmlHelper <object> >(); var serviceProvider = new Mock <IServiceProvider>(); serviceProvider.Setup(p => p.GetService(typeof(IHtmlHelper <object>))).Returns(helper); var viewContext = GetViewContext(serviceProvider.Object); // Act activator.Activate(new TestViewComponent(), viewContext); // Assert Assert.Null(viewContext.ViewData.Model); }
public void DefaulViewComponentActivatorContextualizesService() { // Arrange var activator = new DefaultViewComponentActivator(); var instance = new TestClassUsingMyService(); var myTestService = new MyService(); var serviceProvider = new Mock <IServiceProvider>(); serviceProvider.Setup(p => p.GetService(typeof(MyService))).Returns(myTestService); var viewContext = GetViewContext(serviceProvider.Object); // Act activator.Activate(instance, viewContext); // Assert Assert.Same(myTestService, instance.MyTestService); Assert.Same(viewContext, instance.MyTestService.ViewContext); }
public void DefaultViewComponentActivatorActivatesNonBuiltInTypes() { // Arrange var activator = new DefaultViewComponentActivator(); var helper = Mock.Of <IHtmlHelper <object> >(); var myTestService = new MyService(); var serviceProvider = new Mock <IServiceProvider>(); serviceProvider.Setup(p => p.GetService(typeof(IHtmlHelper <object>))).Returns(helper); serviceProvider.Setup(p => p.GetService(typeof(MyService))).Returns(myTestService); var viewContext = GetViewContext(serviceProvider.Object); var instance = new TestViewComponentWithCustomDataType(); // Act activator.Activate(instance, viewContext); // Assert Assert.Equal(myTestService, instance.TestMyServiceObject); }
public void DefaultViewComponentActivatorSetsAllPropertiesMarkedAsActivate() { // Arrange var activator = new DefaultViewComponentActivator(); var instance = new TestViewComponent(); var helper = Mock.Of <IHtmlHelper <object> >(); var serviceProvider = new Mock <IServiceProvider>(); serviceProvider.Setup(p => p.GetService(typeof(IHtmlHelper <object>))).Returns(helper); var viewContext = GetViewContext(serviceProvider.Object); // Act activator.Activate(instance, viewContext); // Assert Assert.Same(helper, instance.Html); Assert.Same(viewContext, instance.ViewContext); Assert.IsType <ViewDataDictionary>(instance.ViewData); }