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 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)); }
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); }