public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator, 
            PageTypeBuilderConfiguration configuration, 
            PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine,
            PageTypeDefinitionValidator pageTypeDefinitionValidator,
            PageTypeResolver pageTypeResolver,
            IPageTypeLocator pageTypeLocator,
            PageTypeUpdater pageTypeUpdater,
            TabDefinitionUpdater tabDefinitionUpdater,
            TabLocator tabLocator,
            GlobalPropertySettingsSynchronizer globalPropertySettingsSynchronizer,
            IHooksHandler hooksHandler)
        {
            _configuration = configuration;
            this.pageTypeResolver = pageTypeResolver;
            TabLocator = tabLocator;
            TabDefinitionUpdater = tabDefinitionUpdater;

            using (new TimingsLogger("Getting page type definitions"))
            {
                _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions();
            }

            PageTypeUpdater = pageTypeUpdater;
            PageDefinitionSynchronizationEngine = pageDefinitionSynchronizationEngine;
            PageTypeDefinitionValidator = pageTypeDefinitionValidator;
            _pageTypeLocator = pageTypeLocator;
            this.globalPropertySettingsSynchronizer = globalPropertySettingsSynchronizer;
            this.hooksHandler = hooksHandler;
        }
        public void GivenPageTypeUpdationDisabled_SynchronizePageTypes_OnlyAddsExistingPageTypesToResolver()
        {
            MockRepository            fakes = new MockRepository();
            List <PageTypeDefinition> allPageTypeDefinitions = new List <PageTypeDefinition>
            {
                new PageTypeDefinition(),
                new PageTypeDefinition()
            };
            List <PageTypeDefinition> nonExistingPageTypesDefinitions = new List <PageTypeDefinition> {
                allPageTypeDefinitions[0]
            };
            PageTypeBuilderConfiguration configuration = fakes.Stub <PageTypeBuilderConfiguration>();

            configuration.Stub(config => config.DisablePageTypeUpdation).Return(true);
            configuration.Replay();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(allPageTypeDefinitions);
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator, configuration);

            pageTypeSynchronizer.Stub(synchronizer => synchronizer.GetNonExistingPageTypes(allPageTypeDefinitions)).Return(nonExistingPageTypesDefinitions);
            pageTypeSynchronizer.Replay();

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeSynchronizer.AssertWasCalled(synchronizer => synchronizer.AddPageTypesToResolver(Arg <List <PageTypeDefinition> > .Matches(list => list.Count == 1)));
        }
 public static PageTypeUpdater Create(IPageTypeDefinitionLocator pageDefinitionLocator, IPageTypeFactory pageTypeFactory)
 {
     return new PageTypeUpdater(
         pageDefinitionLocator,
         pageTypeFactory,
         new PageTypeValueExtractor(),
         new PageTypeLocator(pageTypeFactory));
 }
Esempio n. 4
0
 public static PageTypeUpdater Create(IPageTypeDefinitionLocator pageDefinitionLocator, IPageTypeFactory pageTypeFactory)
 {
     return(new PageTypeUpdater(
                pageDefinitionLocator,
                pageTypeFactory,
                new PageTypeValueExtractor(),
                new PageTypeLocator(pageTypeFactory)));
 }
        public void SynchronizePageTypes_AddsPageTypesToResolver()
        {
            List <PageTypeDefinition>  pageTypeDefinitions       = new List <PageTypeDefinition>();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(pageTypeDefinitions);
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator);

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeSynchronizer.AssertWasCalled(synchronizer => synchronizer.AddPageTypesToResolver(pageTypeDefinitions));
        }
        private IPageTypeDefinitionLocator CreatePageTypeDefinitionLocatorStub(List <PageTypeDefinition> pageTypeDefinitions)
        {
            MockRepository             fakes             = new MockRepository();
            IPageTypeDefinitionLocator definitionLocator = fakes.Stub <IPageTypeDefinitionLocator>();

            definitionLocator.Stub(updater => updater.GetPageTypeDefinitions()).Return(pageTypeDefinitions);
            definitionLocator.Replay();

            return(definitionLocator);
        }
        public void SynchronizePageTypes_CallsPageTypeDefinitionLocatorGetPageTypeDefinitions()
        {
            List <PageTypeDefinition>  pageTypeDefinitions       = new List <PageTypeDefinition>();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(pageTypeDefinitions);
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator);

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeDefinitionLocator.AssertWasCalled(locator => locator.GetPageTypeDefinitions(), options => options.Repeat.AtLeastOnce());
        }
        public void SynchronizePageTypes_UpdatesPageTypePropertyDefinitionsForPageTypes()
        {
            List <PageTypeDefinition>  pageTypeDefinitions       = new List <PageTypeDefinition>();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(pageTypeDefinitions);
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator);

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeSynchronizer.AssertWasCalled(synchronizer => synchronizer.UpdatePageTypePropertyDefinitions(pageTypeDefinitions));
        }
        public void SynchronizePageTypes_CreatesNonExistingPageTypes()
        {
            List <PageTypeDefinition>  pageTypeDefinitions       = new List <PageTypeDefinition>();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(pageTypeDefinitions);
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator);

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeSynchronizer.AssertWasCalled(synchronizer => synchronizer.CreateNonExistingPageTypes(pageTypeDefinitions));
        }
Esempio n. 10
0
 public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, 
     IPageTypeRepository pageTypeRepository, 
     IPageTypeValueExtractor pageTypeValueExtractor,
     IPageTypeLocator pageTypeLocator)
 {
     _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeRepository = pageTypeRepository;
     DefaultFilename = DefaultPageTypeFilename;
     _pageTypeValueExtractor = pageTypeValueExtractor;
     _pageTypeLocator = pageTypeLocator;
 }
 public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator,
                        IPageTypeFactory pageTypeFactory,
                        IPageTypeValueExtractor pageTypeValueExtractor,
                        IPageTypeLocator pageTypeLocator)
 {
     _pageTypeDefinitions    = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeFactory         = pageTypeFactory;
     DefaultFilename         = DefaultPageTypeFilename;
     _pageTypeValueExtractor = pageTypeValueExtractor;
     _pageTypeLocator        = pageTypeLocator;
 }
 public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator,
                        IPageTypeRepository pageTypeRepository,
                        IPageTypeValueExtractor pageTypeValueExtractor,
                        IPageTypeLocator pageTypeLocator)
 {
     _pageTypeDefinitions    = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeRepository      = pageTypeRepository;
     DefaultFilename         = DefaultPageTypeFilename;
     _pageTypeValueExtractor = pageTypeValueExtractor;
     _pageTypeLocator        = pageTypeLocator;
     NewlyCreatedPageTypes   = new List <IPageType>();
 }
 public PageTypeUpdater(IPageTypeDefinitionLocator pageTypeDefinitionLocator, 
     IPageTypeRepository pageTypeRepository, 
     IPageTypeValueExtractor pageTypeValueExtractor,
     IPageTypeLocator pageTypeLocator)
 {
     _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeRepository = pageTypeRepository;
     DefaultFilename = DefaultPageTypeFilename;
     _pageTypeValueExtractor = pageTypeValueExtractor;
     _pageTypeLocator = pageTypeLocator;
     NewlyCreatedPageTypes = new List<IPageType>();
     UpdatedPageTypeIds = new List<int>();
 }
        private PageTypeSynchronizer GetPageTypePartiallyMockedSynchronizer(IPageTypeDefinitionLocator definitionLocator, PageTypeBuilderConfiguration configuration)
        {
            MockRepository fakes = new MockRepository();
            PageTypeSynchronizer pageTypeSynchronizer = PageTypeSynchronizerFactory.PartialMock(fakes, definitionLocator, configuration);
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdateTabDefinitions());
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.ValidatePageTypeDefinitions(Arg<List<PageTypeDefinition>>.Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.CreateNonExistingPageTypes(Arg<List<PageTypeDefinition>>.Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdatePageTypes(Arg<List<PageTypeDefinition>>.Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdatePageTypePropertyDefinitions(Arg<List<PageTypeDefinition>>.Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.AddPageTypesToResolver(Arg<List<PageTypeDefinition>>.Is.Anything));
            pageTypeSynchronizer.Replay();

            return pageTypeSynchronizer;
        }
        private PageTypeSynchronizer GetPageTypePartiallyMockedSynchronizer(IPageTypeDefinitionLocator definitionLocator, PageTypeBuilderConfiguration configuration)
        {
            MockRepository       fakes = new MockRepository();
            PageTypeSynchronizer pageTypeSynchronizer = PageTypeSynchronizerFactory.PartialMock(fakes, definitionLocator, configuration);

            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdateTabDefinitions());
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.ValidatePageTypeDefinitions(Arg <List <PageTypeDefinition> > .Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.CreateNonExistingPageTypes(Arg <List <PageTypeDefinition> > .Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdatePageTypes(Arg <List <PageTypeDefinition> > .Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.UpdatePageTypePropertyDefinitions(Arg <List <PageTypeDefinition> > .Is.Anything));
            pageTypeSynchronizer.Stub(synchronizer => synchronizer.AddPageTypesToResolver(Arg <List <PageTypeDefinition> > .Is.Anything));
            pageTypeSynchronizer.Replay();

            return(pageTypeSynchronizer);
        }
 public static PageTypeSynchronizer PartialMock(
     MockRepository fakesRepository,
     IPageTypeDefinitionLocator definitionLocator,
     PageTypeBuilderConfiguration configuration)
 {
     return(fakesRepository.PartialMock <PageTypeSynchronizer>(
                definitionLocator,
                configuration,
                PageTypePropertyUpdaterFactory.Create(),
                new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())),
                new PageTypeResolver(),
                new PageTypeLocator(new PageTypeFactory()),
                PageTypeUpdaterFactory.Create(),
                TabDefinitionUpdaterFactory.Create(),
                TabLocatorFactory.Create()));
 }
 public static PageTypeSynchronizer PartialMock(
     MockRepository fakesRepository, 
     IPageTypeDefinitionLocator definitionLocator, 
     PageTypeBuilderConfiguration configuration)
 {
     return fakesRepository.PartialMock<PageTypeSynchronizer>(
         definitionLocator,
         configuration,
         PageTypePropertyUpdaterFactory.Create(),
         new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())),
         new PageTypeResolver(),
         new PageTypeLocator(new PageTypeFactory()),
         PageTypeUpdaterFactory.Create(),
         TabDefinitionUpdaterFactory.Create(),
         TabLocatorFactory.Create());
 }
        public void GivenPageTypeUpdationDisabled_SynchronizePageTypes_DoesNotUpdatePageTypePropertyDefinitions()
        {
            MockRepository fakes = new MockRepository();
            PageTypeBuilderConfiguration configuration = fakes.Stub <PageTypeBuilderConfiguration>();

            configuration.Stub(config => config.DisablePageTypeUpdation).Return(true);
            configuration.Replay();
            IPageTypeDefinitionLocator pageTypeDefinitionLocator = CreatePageTypeDefinitionLocatorStub(new List <PageTypeDefinition>());
            PageTypeSynchronizer       pageTypeSynchronizer      = GetPageTypePartiallyMockedSynchronizer(pageTypeDefinitionLocator, configuration);

            pageTypeSynchronizer.Stub(synchronizer =>
                                      synchronizer.GetNonExistingPageTypes(Arg <List <PageTypeDefinition> > .Is.Anything)).Return(new List <PageTypeDefinition>());

            pageTypeSynchronizer.SynchronizePageTypes();

            pageTypeSynchronizer.AssertWasNotCalled(synchronizer => synchronizer.UpdatePageTypePropertyDefinitions(Arg <List <PageTypeDefinition> > .Is.Anything));
        }
 public static PageTypeSynchronizer PartialMock(
     MockRepository fakesRepository, 
     IPageTypeDefinitionLocator definitionLocator, 
     PageTypeBuilderConfiguration configuration)
 {
     return fakesRepository.PartialMock<PageTypeSynchronizer>(
         definitionLocator,
         configuration,
         PageDefinitionSynchronizationEngineFactory.Create(),
         new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeRepository(), new NativePageDefinitionsMap())),
         new PageTypeResolver(),
         new PageTypeLocator(new PageTypeRepository()),
         PageTypeUpdaterFactory.Create(),
         TabDefinitionUpdaterFactory.Create(),
         TabLocatorFactory.Create(),
         new GlobalPropertySettingsSynchronizer(() => new PropertySettingsRepository(), new GlobalPropertySettingsLocator(new AppDomainAssemblyLocator())),
         new HooksHandler(new AppDomainAssemblyLocator()));
 }
 public static PageTypeSynchronizer PartialMock(
     MockRepository fakesRepository, 
     IPageTypeDefinitionLocator definitionLocator, 
     PageTypeBuilderConfiguration configuration)
 {
     return fakesRepository.PartialMock<PageTypeSynchronizer>(
         definitionLocator,
         configuration,
         PageDefinitionSynchronizationEngineFactory.Create(),
         new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeRepository(), new NativePageDefinitionsMap())),
         new PageTypeResolver(),
         new PageTypeLocator(new PageTypeRepository()),
         PageTypeUpdaterFactory.Create(),
         TabDefinitionUpdaterFactory.Create(),
         TabLocatorFactory.Create(),
         new GlobalPropertySettingsSynchronizer(new PropertySettingsRepository(), new GlobalPropertySettingsLocator(new AppDomainAssemblyLocator())),
         new HooksHandler(new AppDomainAssemblyLocator()));
 }
 public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator, 
     PageTypeBuilderConfiguration configuration, 
     PageTypePropertyUpdater pageTypePropertyUpdater,
     PageTypeDefinitionValidator pageTypeDefinitionValidator,
     PageTypeResolver pageTypeResolver,
     IPageTypeLocator pageTypeLocator,
     PageTypeUpdater pageTypeUpdater,
     TabDefinitionUpdater tabDefinitionUpdater,
     TabLocator tabLocator)
 {
     _configuration = configuration;
     PageTypeResolver = pageTypeResolver;
     TabLocator = tabLocator;
     TabDefinitionUpdater = tabDefinitionUpdater;
     _pageTypeDefinitions = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeUpdater = pageTypeUpdater;
     PageTypePropertyUpdater = pageTypePropertyUpdater;
     PageTypeDefinitionValidator = pageTypeDefinitionValidator;
     _pageTypeLocator = pageTypeLocator;
 }
Esempio n. 22
0
 public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator,
                             PageTypeBuilderConfiguration configuration,
                             PageTypePropertyUpdater pageTypePropertyUpdater,
                             PageTypeDefinitionValidator pageTypeDefinitionValidator,
                             PageTypeResolver pageTypeResolver,
                             IPageTypeLocator pageTypeLocator,
                             PageTypeUpdater pageTypeUpdater,
                             TabDefinitionUpdater tabDefinitionUpdater,
                             TabLocator tabLocator)
 {
     _configuration              = configuration;
     PageTypeResolver            = pageTypeResolver;
     TabLocator                  = tabLocator;
     TabDefinitionUpdater        = tabDefinitionUpdater;
     _pageTypeDefinitions        = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeUpdater             = pageTypeUpdater;
     PageTypePropertyUpdater     = pageTypePropertyUpdater;
     PageTypeDefinitionValidator = pageTypeDefinitionValidator;
     _pageTypeLocator            = pageTypeLocator;
 }
Esempio n. 23
0
 public PageTypeSynchronizer(IPageTypeDefinitionLocator pageTypeDefinitionLocator,
                             PageTypeBuilderConfiguration configuration,
                             PageDefinitionSynchronizationEngine pageDefinitionSynchronizationEngine,
                             PageTypeDefinitionValidator pageTypeDefinitionValidator,
                             PageTypeResolver pageTypeResolver,
                             IPageTypeLocator pageTypeLocator,
                             PageTypeUpdater pageTypeUpdater,
                             TabDefinitionUpdater tabDefinitionUpdater,
                             TabLocator tabLocator,
                             GlobalPropertySettingsSynchronizer globalPropertySettingsSynchronizer,
                             IHooksHandler hooksHandler)
 {
     _configuration        = configuration;
     this.pageTypeResolver = pageTypeResolver;
     TabLocator            = tabLocator;
     TabDefinitionUpdater  = tabDefinitionUpdater;
     _pageTypeDefinitions  = pageTypeDefinitionLocator.GetPageTypeDefinitions();
     PageTypeUpdater       = pageTypeUpdater;
     PageDefinitionSynchronizationEngine = pageDefinitionSynchronizationEngine;
     PageTypeDefinitionValidator         = pageTypeDefinitionValidator;
     _pageTypeLocator = pageTypeLocator;
     this.globalPropertySettingsSynchronizer = globalPropertySettingsSynchronizer;
     this.hooksHandler = hooksHandler;
 }
Esempio n. 24
0
 public static PageTypeUpdater Create(IPageTypeDefinitionLocator pageDefinitionLocator)
 {
     return(Create(pageDefinitionLocator, new PageTypeFactory()));
 }
 public static PageTypeUpdater Create(IPageTypeDefinitionLocator pageDefinitionLocator)
 {
     return Create(pageDefinitionLocator, new PageTypeFactory());
 }
 private PageTypeSynchronizer GetPageTypePartiallyMockedSynchronizer(IPageTypeDefinitionLocator definitionLocator)
 {
     return GetPageTypePartiallyMockedSynchronizer(definitionLocator, new PageTypeBuilderConfiguration());
 }
 private PageTypeSynchronizer GetPageTypePartiallyMockedSynchronizer(IPageTypeDefinitionLocator definitionLocator)
 {
     return(GetPageTypePartiallyMockedSynchronizer(definitionLocator, new PageTypeBuilderConfiguration()));
 }