public static N2.Edit.Versioning.ContentVersionRepository CreateVersionRepository(ref IPersister persister, ref ContentActivator activator, params Type[] definedTypes) { if (persister == null) { persister = SetupFakePersister(); } var definitions = SetupDefinitions(definedTypes); var parser = new UrlParser(persister, new ThreadContext(), new Host(new ThreadContext(), new HostSection()), new ConnectionMonitor(), new HostSection()); var proxyFactory = new InterceptingProxyFactory(); if (activator == null) { activator = new ContentActivator(new StateChanger(), new ItemNotifier(), proxyFactory); activator.Initialize(definitions.GetDefinitions()); } var importer = new Importer(persister, new ItemXmlReader(definitions, activator, persister.Repository), new Fakes.FakeMemoryFileSystem()); var exporter = new Exporter( new ItemXmlWriter( definitions, parser, new FakeMemoryFileSystem())); return(new ContentVersionRepository( new FakeRepository <ContentVersion>(), exporter, importer, parser, proxyFactory)); }
public FakeEngine(params Type[] types) { AddComponentInstance <ITypeFinder>(new FakeTypeFinder(types)); var definitionManager = TestSupport.SetupDefinitions(types.Where(t => typeof(ContentItem).IsAssignableFrom(t)).ToArray()); AddComponentInstance <IDefinitionManager>(definitionManager); var adapterProvider = new ContentAdapterProvider(this, Resolve <ITypeFinder>()); AddComponentInstance <IContentAdapterProvider>(adapterProvider); var itemRepository = new FakeContentItemRepository(); AddComponentInstance <IRepository <ContentItem> >(itemRepository); AddComponentInstance <IContentItemRepository>(itemRepository); var webContext = new ThreadContext(); AddComponentInstance <IWebContext>(webContext); var host = new Host(webContext, 1, 1); AddComponentInstance <IHost>(host); var security = new FakeSecurityManager(); AddComponentInstance <ISecurityManager>(security); var source = new ContentSource(security, new [] { new DatabaseSource(host, itemRepository) }); AddComponentInstance(source); AddComponentInstance <IPersister>(new ContentPersister(source, itemRepository)); AddComponentInstance <IWebContext>(webContext); var proxyFactory = new InterceptingProxyFactory(); AddComponentInstance <IProxyFactory>(proxyFactory); var activator = new ContentActivator(new N2.Edit.Workflow.StateChanger(), new ItemNotifier(), proxyFactory); AddComponentInstance <ContentActivator>(activator); activator.Initialize(definitionManager.GetDefinitions()); }
public void TestFixtureSetUp() { factory = new InterceptingProxyFactory(); var map = new DefinitionMap(); factory.Initialize(new[] { typeof(InterceptableItem), typeof(InterceptableInheritorItem), typeof(IgnoringItem) }.Select(t => map.GetOrCreateDefinition(t))); }
public static void Setup(out IDefinitionProvider[] definitionProviders, out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes) { var map = new DefinitionMap(); definitionProviders = SetupDefinitionProviders(map, itemTypes); notifier = new ItemNotifier(); proxyFactory = new InterceptingProxyFactory(); activator = new ContentActivator(new N2.Edit.Workflow.StateChanger(), notifier, proxyFactory); definitions = new DefinitionManager(definitionProviders, activator, new StateChanger(), new DefinitionMap()); ((DefinitionManager)definitions).Start(); }
public virtual void TestFixtureSetup() { IDefinitionProvider[] definitionProviders; fs = new FakeMemoryFileSystem(); TestSupport.Setup(out definitionProviders, out definitions, out activator, out notifier, out proxyFactory, persistedTypes); //var definitionProviders = TestSupport.SetupDefinitionProviders(new DefinitionMap(), typeof(PersistableItem), typeof(NonVirtualItem), typeof(PersistablePart)); var proxies = new InterceptingProxyFactory(); proxies.Initialize(definitionProviders.SelectMany(dp => dp.GetDefinitions())); }
public static void Setup(out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes) { ITypeFinder typeFinder = new Fakes.FakeTypeFinder(itemTypes[0].Assembly, itemTypes); DefinitionBuilder definitionBuilder = new DefinitionBuilder(typeFinder, new EngineSection()); notifier = new ItemNotifier(); proxyFactory = new InterceptingProxyFactory(); activator = new ContentActivator(new N2.Edit.Workflow.StateChanger(), notifier, proxyFactory); definitions = new DefinitionManager(new [] { new DefinitionProvider(definitionBuilder) }, activator); ((DefinitionManager)definitions).Start(); }
public static void Setup(out IDefinitionManager definitions, out ITemplateAggregator templates, out ContentActivator activator, params Type[] itemTypes) { var map = new DefinitionMap(); var definitionProviders = SetupDefinitionProviders(map, itemTypes); var notifier = new ItemNotifier(); var proxyFactory = new InterceptingProxyFactory(); activator = new ContentActivator(new N2.Edit.Workflow.StateChanger(), notifier, proxyFactory); definitions = new DefinitionManager(definitionProviders, activator, new StateChanger(), new DefinitionMap()); templates = new TemplateAggregator(definitions, new[] { new TemplateProvider(activator, map) }); ((IAutoStart)definitions).Start(); ((IAutoStart)templates).Start(); }
public static void Setup(out IDefinitionProvider[] definitionProviders, out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes) { ITypeFinder typeFinder = new Fakes.FakeTypeFinder(itemTypes[0].Assembly, itemTypes); DefinitionBuilder definitionBuilder = new DefinitionBuilder(new DefinitionMap(), typeFinder, new TransformerBase <IUniquelyNamed> [0], SetupEngineSection()); notifier = new ItemNotifier(); proxyFactory = new InterceptingProxyFactory(); activator = new ContentActivator(new N2.Edit.Workflow.StateChanger(), notifier, proxyFactory); definitionProviders = new IDefinitionProvider[] { new DefinitionProvider(definitionBuilder) }; definitions = new DefinitionManager(definitionProviders, new ITemplateProvider[0], activator, new StateChanger()); ((DefinitionManager)definitions).Start(); }
public static void Setup(out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out FakeSessionProvider sessionProvider, out ItemFinder finder, out SchemaExport schemaCreator, out InterceptingProxyFactory proxyFactory, IWebContext context, DatabaseSection config, ConfigurationBuilderParticipator[] participators, params Type[] itemTypes) { Setup(out definitions, out activator, out notifier, out proxyFactory, itemTypes); var connectionStrings = (ConnectionStringsSection)ConfigurationManager.GetSection("connectionStrings"); var configurationBuilder = new ConfigurationBuilder(definitions, new ClassMappingGenerator(), new ThreadContext(), participators, config, connectionStrings); var configurationSource = new ConfigurationSource(configurationBuilder); sessionProvider = new FakeSessionProvider(configurationSource, new NHInterceptor(proxyFactory, configurationSource, notifier), context); finder = new ItemFinder(sessionProvider, definitions); schemaCreator = new SchemaExport(configurationSource.BuildConfiguration()); }
public static void Setup(out IDefinitionManager definitions, out ContentActivator activator, out IItemNotifier notifier, out FakeSessionProvider sessionProvider, out ItemFinder finder, out SchemaExport schemaCreator, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes) { var participators = new ConfigurationBuilderParticipator[0]; FakeWebContextWrapper context = new Fakes.FakeWebContextWrapper(); DatabaseSection config = (DatabaseSection)ConfigurationManager.GetSection("n2/database"); Setup(out definitions, out activator, out notifier, out sessionProvider, out finder, out schemaCreator, out proxyFactory, context, config, participators, itemTypes); }
public static IDefinitionManager SetupDefinitions(out ContentActivator activator, out InterceptingProxyFactory proxyFactory, params Type[] itemTypes) { IItemNotifier notifier; IDefinitionProvider[] definitionProviders; IDefinitionManager definitions; Setup(out definitionProviders, out definitions, out activator, out notifier, out proxyFactory, itemTypes); return(definitions); }
public void TestFixtureSetUp() { factory = new InterceptingProxyFactory(); factory.Initialize(new[] { typeof(InterceptableItem), typeof(InterceptableInheritorItem), typeof(IgnoringItem) }); }