Пример #1
0
        public void GivenPageType_UpdatePageTypePropertyDefinitions_CallsPageTypePropertyUpdaterUpdatePageTypePropertyDefinitions()
        {
            PageTypeDefinition definition = new PageTypeDefinition();

            MockRepository          fakes                   = new MockRepository();
            PageTypeUpdater         pageTypeUpdater         = PageTypeUpdaterFactory.Stub(fakes);
            IPageType               pageType                = new NativePageType();
            PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.Stub(fakes);

            pageTypePropertyUpdater.Stub(updater => updater.UpdatePageTypePropertyDefinitions(pageType, definition));
            pageTypePropertyUpdater.Replay();
            IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>();

            pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(pageType);
            pageTypeLocator.Replay();
            List <PageTypeDefinition> definitions = new List <PageTypeDefinition> {
                definition
            };
            PageTypeSynchronizer synchronizer =
                PageTypeSynchronizerFactory.Create(pageTypePropertyUpdater, pageTypeLocator);

            synchronizer.PageTypeUpdater = pageTypeUpdater;
            synchronizer.UpdatePageTypePropertyDefinitions(definitions);

            pageTypePropertyUpdater.AssertWasCalled(updater => updater.UpdatePageTypePropertyDefinitions(pageType, definition));
        }
Пример #2
0
        public void GivenPageTypeDefinition_AddPageTypesToResolver_AddsToResolver()
        {
            List <PageTypeDefinition> definitions = new List <PageTypeDefinition>();
            PageTypeDefinition        definition  = new PageTypeDefinition
            {
                Type      = typeof(string),
                Attribute = new PageTypeAttribute()
            };

            definitions.Add(definition);
            IPageType pageType = new NativePageType();

            pageType.ID = 1;
            MockRepository   fakes           = new MockRepository();
            IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>();

            pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(pageType);
            pageTypeLocator.Replay();
            PageTypeResolver     resolver     = new PageTypeResolver();
            PageTypeSynchronizer synchronizer = PageTypeSynchronizerFactory.Create(resolver, pageTypeLocator);

            synchronizer.AddPageTypesToResolver(definitions);

            Assert.Equal <Type>(definition.Type, resolver.GetPageTypeType(pageType.ID));
        }
        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);
        }
Пример #4
0
        public void GivenPageType_UpdatePageTypes_CallsPageTypeUpdaterUpdatePageType()
        {
            PageTypeSynchronizer synchronizer    = PageTypeSynchronizerFactory.Create();
            MockRepository       fakes           = new MockRepository();
            PageTypeUpdater      pageTypeUpdater = PageTypeUpdaterFactory.Stub(fakes);
            PageTypeDefinition   definition      = new PageTypeDefinition();

            pageTypeUpdater.Stub(updater => updater.UpdatePageType(definition));
            pageTypeUpdater.Replay();
            synchronizer.PageTypeUpdater = pageTypeUpdater;
            List <PageTypeDefinition> definitions = new List <PageTypeDefinition> {
                definition
            };

            synchronizer.UpdatePageTypes(definitions);

            pageTypeUpdater.AssertWasCalled(updater => updater.UpdatePageType(definition));
        }
Пример #5
0
        public void UpdateTabDefinitions_CallsTabDefinitionUpdaterWithDefinedTabs()
        {
            PageTypeSynchronizer pageTypeSynchronizer = PageTypeSynchronizerFactory.Create();
            MockRepository       fakes          = new MockRepository();
            TabLocator           fakeTabLocator = TabLocatorFactory.Stub(fakes);
            List <Tab>           tabs           = new List <Tab> {
                new TestTab()
            };

            fakeTabLocator.Stub(locator => locator.GetDefinedTabs()).Return(tabs);
            fakeTabLocator.Replay();
            pageTypeSynchronizer.TabLocator = fakeTabLocator;
            TabDefinitionUpdater fakeTabDefinitionUpdater = TabDefinitionUpdaterFactory.Stub(fakes);

            fakeTabDefinitionUpdater.Stub(updater => updater.UpdateTabDefinitions(Arg <List <Tab> > .Is.Anything));
            fakeTabDefinitionUpdater.Replay();
            pageTypeSynchronizer.TabDefinitionUpdater = fakeTabDefinitionUpdater;

            pageTypeSynchronizer.UpdateTabDefinitions();

            pageTypeSynchronizer.TabLocator.AssertWasCalled(updater => updater.GetDefinedTabs());
            pageTypeSynchronizer.TabDefinitionUpdater.AssertWasCalled(updater => updater.UpdateTabDefinitions(tabs));
        }
 private PageTypeSynchronizer CreatePageTypeSynchronizer()
 {
     return(PageTypeSynchronizerFactory.Create());
 }
Пример #7
0
 private PageTypeSynchronizer CreateSynchronizer(IPageTypeLocator pageTypeLocator)
 {
     return(PageTypeSynchronizerFactory.Create(pageTypeLocator));
 }