Esempio n. 1
0
        public void CreateActivator_ThrowsIfPageTypeInfoIsNull()
        {
            // Arrange
            var descriptor = new CompiledPageActionDescriptor();
            var activator  = new DefaultPageActivatorProvider();

            // Act & Assert
            ExceptionAssert.ThrowsArgument(
                () => activator.CreateActivator(descriptor),
                "actionDescriptor",
                "The 'PageTypeInfo' property of 'actionDescriptor' must not be null.");
        }
Esempio n. 2
0
        public void CreateActivator_ThrowsIfTypeDoesNotHaveParameterlessConstructor()
        {
            // Arrange
            var descriptor = new CompiledPageActionDescriptor
            {
                PageTypeInfo = typeof(PageWithoutParameterlessConstructor).GetTypeInfo(),
            };
            var pageContext = new PageContext();
            var activator   = new DefaultPageActivatorProvider();

            // Act & Assert
            Assert.Throws <ArgumentException>(() => activator.CreateActivator(descriptor));
        }
Esempio n. 3
0
        public void CreateActivator_ReturnsFactoryForPage(Type type)
        {
            // Arrange
            var pageContext = new PageContext();
            var viewContext = new ViewContext();
            var descriptor  = new CompiledPageActionDescriptor
            {
                PageTypeInfo = type.GetTypeInfo(),
            };


            var activator = new DefaultPageActivatorProvider();

            // Act
            var factory  = activator.CreateActivator(descriptor);
            var instance = factory(pageContext, viewContext);

            // Assert
            Assert.NotNull(instance);
            Assert.IsType(type, instance);
        }