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)); }
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)); }
public void GivenExistingPageTypeFound_CreateNonExistingPageTypes_PageTypeUpdaterCreateNewPageTypeNotCalled() { MockRepository fakes = new MockRepository(); PageTypeUpdater pageTypeUpdater = PageTypeUpdaterFactory.Stub(fakes); PageTypeDefinition definition = new PageTypeDefinition(); List <PageTypeDefinition> definitions = new List <PageTypeDefinition>(); definitions.Add(definition); pageTypeUpdater.Replay(); IPageTypeLocator pageTypeLocator = fakes.Stub <IPageTypeLocator>(); pageTypeLocator.Stub(locator => locator.GetExistingPageType(definition)).Return(new NativePageType()); pageTypeLocator.Replay(); PageTypeSynchronizer synchronizer = CreateSynchronizer(pageTypeLocator); synchronizer.CreateNonExistingPageTypes(definitions); pageTypeUpdater.AssertWasNotCalled(updater => updater.CreateNewPageType(Arg <PageTypeDefinition> .Is.Anything)); }