Esempio n. 1
0
    public void Create_CreatesInstancesOfTypes(Type type)
    {
        // Arrange
        var activator       = new DefaultControllerActivator(new TypeActivatorCache());
        var serviceProvider = new Mock <IServiceProvider>(MockBehavior.Strict);

        var httpContext = new DefaultHttpContext
        {
            RequestServices = serviceProvider.Object
        };

        var context = new ControllerContext(
            new ActionContext(
                httpContext,
                new RouteData(),
                new ControllerActionDescriptor
        {
            ControllerTypeInfo = type.GetTypeInfo()
        }));

        // Act
        var instance = activator.Create(context);

        // Assert
        Assert.IsType(type, instance);
    }
Esempio n. 2
0
    public void Create_TypeActivatesTypesWithServices()
    {
        // Arrange
        var activator       = new DefaultControllerActivator(new TypeActivatorCache());
        var serviceProvider = new Mock <IServiceProvider>(MockBehavior.Strict);
        var testService     = new TestService();

        serviceProvider.Setup(s => s.GetService(typeof(TestService)))
        .Returns(testService)
        .Verifiable();

        var httpContext = new DefaultHttpContext
        {
            RequestServices = serviceProvider.Object
        };

        var context = new ControllerContext(
            new ActionContext(
                httpContext,
                new RouteData(),
                new ControllerActionDescriptor
        {
            ControllerTypeInfo = typeof(TypeDerivingFromControllerWithServices).GetTypeInfo()
        }));

        // Act
        var instance = activator.Create(context);

        // Assert
        var controller = Assert.IsType <TypeDerivingFromControllerWithServices>(instance);

        Assert.Same(testService, controller.TestService);
        serviceProvider.Verify();
    }
        public void Create_TypeActivatesTypesWithServices()
        {
            // Arrange
            var activator = new DefaultControllerActivator(new TypeActivatorCache());
            var serviceProvider = new Mock<IServiceProvider>(MockBehavior.Strict);
            var testService = new TestService();
            serviceProvider.Setup(s => s.GetService(typeof(TestService)))
                           .Returns(testService)
                           .Verifiable();

            var httpContext = new DefaultHttpContext
            {
                RequestServices = serviceProvider.Object
            };

            var context = new ControllerContext(
                new ActionContext(
                    httpContext,
                    new RouteData(),
                    new ControllerActionDescriptor
                    {
                        ControllerTypeInfo = typeof(TypeDerivingFromControllerWithServices).GetTypeInfo()
                    }));

            // Act
            var instance = activator.Create(context);

            // Assert
            var controller = Assert.IsType<TypeDerivingFromControllerWithServices>(instance);
            Assert.Same(testService, controller.TestService);
            serviceProvider.Verify();
        }
        public void Create_CreatesInstancesOfTypes(Type type)
        {
            // Arrange
            var activator = new DefaultControllerActivator(new TypeActivatorCache());
            var serviceProvider = new Mock<IServiceProvider>(MockBehavior.Strict);

            var httpContext = new DefaultHttpContext
            {
                RequestServices = serviceProvider.Object
            };

            var context = new ControllerContext(
                new ActionContext(
                    httpContext,
                    new RouteData(),
                    new ControllerActionDescriptor
                    {
                        ControllerTypeInfo = type.GetTypeInfo()
                    }));

            // Act
            var instance = activator.Create(context);

            // Assert
            Assert.IsType(type, instance);
        }
Esempio n. 5
0
        public object Create(ControllerContext context)
        {
            var type = context.ActionDescriptor.ControllerTypeInfo;

            if (type.AsType().Equals(typeof(TransfersController)))
            {
                return(ConfigureTransferOnsController(context.HttpContext.RequestServices));
            }

            return(defaultActivator.Create(context));
        }
        public object Create(ControllerContext context)
        {
            //throw new NotImplementedException();
            var type   = context.ActionDescriptor.ControllerTypeInfo;
            var option = new Microsoft.EntityFrameworkCore.DbContextOptionsBuilder <SimpleInventoryContext>();

            option.UseSqlServer(Configuration["ConnectionString"]);
            if (type.AsType().Equals(typeof(InventoryController)))
            {
                return(ConfigureDependency(context.HttpContext.RequestServices, new SimpleInventoryContext(option.Options)));
            }
            return(DefaultActivator.Create(context));
        }