public void Constructor_SetsTabFactoryPropertyValue() { TabDefinitionUpdater tabUpdater = TabDefinitionUpdaterFactory.Create(); Assert.NotNull(tabUpdater.TabDefinitionRepository); Assert.Equal <Type>(typeof(TabDefinitionRepository), tabUpdater.TabDefinitionRepository.GetType()); }
public void GivenExistingTabThatShouldBeUpdated_UpdateTabDefinitions_UpdatesTab() { MockRepository fakes = new MockRepository(); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.PartialMock(fakes); List <Tab> tabs = new List <Tab>(); Tab existingTab = new TestTab(); tabs.Add(existingTab); tabDefinitionUpdater.Stub(updater => updater.UpdateTabDefinition(Arg <TabDefinition> .Is.Anything, Arg <Tab> .Is.Anything)); TabDefinitionRepository fakeTabDefinitionRepository = fakes.Stub <TabDefinitionRepository>(); tabDefinitionUpdater.TabDefinitionRepository = fakeTabDefinitionRepository; TabDefinition existingTabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(existingTab); tabDefinitionUpdater.TabDefinitionRepository.Stub(factory => factory.GetTabDefinition(existingTab.Name)).Return(existingTabDefinition); tabDefinitionUpdater.TabDefinitionRepository.Stub(factory => factory.SaveTabDefinition(Arg <TabDefinition> .Is.Anything)); tabDefinitionUpdater.TabDefinitionRepository.Replay(); tabDefinitionUpdater.Stub(updater => updater.TabDefinitionShouldBeUpdated(existingTabDefinition, existingTab)).Return(true); tabDefinitionUpdater.Replay(); tabDefinitionUpdater.UpdateTabDefinitions(tabs); tabDefinitionUpdater.AssertWasCalled(updater => updater.UpdateTabDefinition(existingTabDefinition, existingTab)); tabDefinitionUpdater.TabDefinitionRepository.AssertWasCalled(factory => factory.SaveTabDefinition(existingTabDefinition)); }
public void GivenTabDefinitionWithAllValuesEqualToTab_TabDefinitionShouldBeUpdated_ReturnsFalse() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); bool shouldBeUpdated = tabDefinitionUpdater.TabDefinitionShouldBeUpdated(tabDefinition, tab); Assert.False(shouldBeUpdated); }
public void GivenTab_UpdateTabDefinition_UpdatesTabDefinitionsSortIndex() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); tabDefinition.SortIndex = tab.SortIndex + 1; TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); tabDefinitionUpdater.UpdateTabDefinition(tabDefinition, tab); Assert.Equal <int>(tab.SortIndex, tabDefinition.SortIndex); }
public void GivenTab_UpdateTabDefinition_UpdatesTabDefinitionsRequiredAccess() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); tabDefinition.RequiredAccess = tab.RequiredAccess + 1; TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); tabDefinitionUpdater.UpdateTabDefinition(tabDefinition, tab); Assert.Equal <AccessLevel>(tab.RequiredAccess, tabDefinition.RequiredAccess); }
public void GivenTab_UpdateTabDefinition_UpdatesTabDefinitionsName() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); tabDefinition.Name = TestValueUtility.CreateRandomString(); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); tabDefinitionUpdater.UpdateTabDefinition(tabDefinition, tab); Assert.Equal <string>(tab.Name, tabDefinition.Name); }
public void GivenTabDefinitionWithDifferentSortIndex_TabDefinitionShouldBeUpdated_ReturnsTrue() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); tabDefinition.SortIndex++; TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); bool shouldBeUpdated = tabDefinitionUpdater.TabDefinitionShouldBeUpdated(tabDefinition, tab); Assert.True(shouldBeUpdated); }
public void GivenTabDefinitionWithDifferentName_TabDefinitionShouldBeUpdated_ReturnsTrue() { Tab tab = new TestTab(); TabDefinition tabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(tab); tabDefinition.Name = TestValueUtility.CreateRandomString(); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); bool shouldBeUpdated = tabDefinitionUpdater.TabDefinitionShouldBeUpdated(tabDefinition, tab); Assert.True(shouldBeUpdated); }
public void GivenExistingTab_UpdateTabDefinitions_DoesNotSaveTab() { MockRepository fakes = new MockRepository(); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.Create(); List <Tab> tabs = new List <Tab>(); Tab existingTab = new TestTab(); tabs.Add(existingTab); TabDefinitionRepository fakeTabDefinitionRepository = fakes.Stub <TabDefinitionRepository>(); tabDefinitionUpdater.TabDefinitionRepository = fakeTabDefinitionRepository; TabDefinition existingTabDefinition = TabDefinitionUpdaterTestsUtility.CreateTabDefinition(existingTab); tabDefinitionUpdater.TabDefinitionRepository.Stub(factory => factory.GetTabDefinition(existingTab.Name)).Return(existingTabDefinition); tabDefinitionUpdater.TabDefinitionRepository.Replay(); tabDefinitionUpdater.UpdateTabDefinitions(tabs); tabDefinitionUpdater.TabDefinitionRepository.AssertWasNotCalled(factory => factory.SaveTabDefinition(Arg <TabDefinition> .Is.Anything)); }
public void GivenNewTab_UpdateTabDefinitions_SavesNewTabDefinition() { MockRepository fakes = new MockRepository(); TabDefinitionUpdater tabDefinitionUpdater = TabDefinitionUpdaterFactory.PartialMock(fakes); List <Tab> tabs = new List <Tab>(); Tab newTab = new TestTab(); tabs.Add(newTab); tabDefinitionUpdater.Stub(updater => updater.UpdateTabDefinition(Arg <TabDefinition> .Is.Anything, Arg <Tab> .Is.Anything)); tabDefinitionUpdater.Replay(); TabDefinitionRepository fakeTabDefinitionRepository = fakes.Stub <TabDefinitionRepository>(); tabDefinitionUpdater.TabDefinitionRepository = fakeTabDefinitionRepository; tabDefinitionUpdater.TabDefinitionRepository.Stub(factory => factory.GetTabDefinition(newTab.Name)).Return(null); tabDefinitionUpdater.TabDefinitionRepository.Stub(factory => factory.SaveTabDefinition(Arg <TabDefinition> .Is.Anything)); tabDefinitionUpdater.TabDefinitionRepository.Replay(); tabDefinitionUpdater.UpdateTabDefinitions(tabs); tabDefinitionUpdater.AssertWasCalled(updater => updater.UpdateTabDefinition(Arg <TabDefinition> .Is.NotNull, Arg <Tab> .Matches(tab => tab == newTab))); tabDefinitionUpdater.TabDefinitionRepository.AssertWasCalled(factory => factory.SaveTabDefinition(Arg <TabDefinition> .Is.NotNull)); }
public void Initialize(InitializationEngine context) { var pageTypeLocator = new PageTypeLocator(new PageTypeFactory()); var pageTypeDefinitionLocator = new PageTypeDefinitionLocator( new AppDomainAssemblyLocator()); var pageTypeUpdater = new PageTypeUpdater( pageTypeDefinitionLocator, new PageTypeFactory(), new PageTypeValueExtractor(), pageTypeLocator); var pageTypePropertyUpdater = new PageTypePropertyUpdater( new PageDefinitionFactory(), new PageDefinitionTypeFactory(), new TabFactory(), new PropertySettingsRepository()); var tabDefinitionUpdater = new TabDefinitionUpdater(new TabFactory()); var tabLocator = new TabLocator(new AppDomainAssemblyLocator()); PageTypeSynchronizer synchronizer = new PageTypeSynchronizer( pageTypeDefinitionLocator, Configuration, pageTypePropertyUpdater, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())), PageTypeResolver.Instance, pageTypeLocator, pageTypeUpdater, tabDefinitionUpdater, tabLocator); synchronizer.SynchronizePageTypes(); DataFactory.Instance.LoadedPage += DataFactory_LoadedPage; DataFactory.Instance.LoadedChildren += DataFactory_LoadedChildren; DataFactory.Instance.LoadedDefaultPageData += DataFactory_LoadedPage; }
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)); }