예제 #1
0
        public void Instantiate_FakeConnectionString_FakeExecutionEngine()
        {
            var localServiceLocator = new ServiceLocator();

            var query = Mock.Of <IQuery>(x => x.ConnectionString == "fake://MyConnectionString");

            var sessionFactory = localServiceLocator.GetSessionFactory();

            sessionFactory.RegisterFactories(new[] { typeof(FakeSessionFactory) });

            var commandFactory = localServiceLocator.GetCommandFactory();

            commandFactory.RegisterFactories(new[] { typeof(FakeCommandFactory) });

            var factory = new ExecutionEngineFactory(sessionFactory, commandFactory);

            factory.RegisterEngines(new[] { typeof(FakeExecutionEngine) });

            var engine = factory.Instantiate(query);

            Assert.IsInstanceOf <FakeExecutionEngine>(engine);
        }