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 GivenPageTypePropertyDefinition_CreateNewPageDefinition_CallsSetPageDefinitionTypeMethod() { PageTypePropertyUpdater partiallyMockedUtility = CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakedSetPageDefinitionTypeMethod(); PageTypePropertyDefinition pageTypePropertyDefinition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); PageDefinition returnedPageDefintion = partiallyMockedUtility.CreateNewPageDefinition(pageTypePropertyDefinition); partiallyMockedUtility.AssertWasCalled(utility => utility.SetPageDefinitionType(returnedPageDefintion, pageTypePropertyDefinition)); }
public void GivenPageTypePropertyDefinition_CreateNewPageDefinition_ReturnsPageDefinitionWithCorrectName() { PageTypePropertyUpdater utility = CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakedSetPageDefinitionTypeMethod(); PageTypePropertyDefinition definition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); PageDefinition returnedPageDefintion = utility.CreateNewPageDefinition(definition); Assert.Equal <string>(definition.Name, returnedPageDefintion.Name); }
public void Constructor_SetsPageDefinitionTypeMapperPropertyToInstanceOfPageDefinitionTypeMapper() { Type expectedType = typeof(PageDefinitionTypeMapper); PageTypePropertyUpdater updater = PageTypePropertyUpdaterFactory.Create(); Assert.NotNull(updater.PageDefinitionTypeMapper); Assert.Equal <Type>(expectedType, updater.PageDefinitionTypeMapper.GetType()); }
public void GivenPageTypePropertyDefinition_CreateNewPageDefinition_SavesPageDefinition() { PageTypePropertyUpdater utility = CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakedSetPageDefinitionTypeMethod(); PageTypePropertyDefinition definition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); PageDefinition returnedPageDefinition = utility.CreateNewPageDefinition(definition); utility.PageDefinitionFactory.AssertWasCalled(factory => factory.Save(returnedPageDefinition)); }
public void GivenPropertyDefinitionWithNoHelpText_UpdatePageDefinitionValues_SetsHelpTextToEmptyString() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <string>(string.Empty, pageDefinitionToUpdate.HelpText); }
public void GivenPropertyDefinition_UpdatePageDefinitionValues_CallsUpdatePageDefinitionTab() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); pageTypePropertyUpdater.AssertWasCalled( utility => utility.UpdatePageDefinitionTab(pageDefinitionToUpdate, propertyDefinition.PageTypePropertyAttribute)); }
private PageTypePropertyUpdater CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod() { MockRepository fakes = new MockRepository(); PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.PartialMock(fakes); pageTypePropertyUpdater.Stub( utility => utility.UpdatePageDefinitionTab(Arg <PageDefinition> .Is.Anything, Arg <PageTypePropertyAttribute> .Is.Anything)); pageTypePropertyUpdater.Replay(); return(pageTypePropertyUpdater); }
public void GivenPageTypePropertyDefinitionWithEditCaption_CreateNewPageDefinition_SetsEditCaptionToDefinitionEditCaption() { PageTypePropertyUpdater partiallyMockedUtility = CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakedSetPageDefinitionTypeMethod(); PageTypePropertyDefinition pageTypePropertyDefinition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); pageTypePropertyDefinition.PageTypePropertyAttribute.EditCaption = TestValueUtility.CreateRandomString(); PageDefinition returnedPageDefintion = partiallyMockedUtility.CreateNewPageDefinition(pageTypePropertyDefinition); Assert.Equal <string>(pageTypePropertyDefinition.PageTypePropertyAttribute.EditCaption, returnedPageDefintion.EditCaption); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionDefaultValueType(DefaultValueType defaultValueType) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.DefaultValueType = defaultValueType; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <DefaultValueType>(propertyDefinition.PageTypePropertyAttribute.DefaultValueType, pageDefinitionToUpdate.DefaultValueType); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionDefaultValue() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.DefaultValue = TestValueUtility.CreateRandomString(); pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <string>(propertyDefinition.PageTypePropertyAttribute.DefaultValue.ToString(), pageDefinitionToUpdate.DefaultValue); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionSearchable(bool searchable) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.Searchable = searchable; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <bool>(propertyDefinition.PageTypePropertyAttribute.Searchable, pageDefinitionToUpdate.Searchable); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionRequired(bool required) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.Required = required; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <bool>(propertyDefinition.PageTypePropertyAttribute.Required, pageDefinitionToUpdate.Required); }
public void GivenPageDefinitionWithSpecifiedLongStringSetting_UpdatePageDefinition_ReturnsDifferentStringThanWhenCalledWithPageDefinitionWithNoLongStringSettings() { PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.Create(); PageDefinition pageDefinition = new PageDefinition(); string valuesWithOutClearAllLongStringSettings = pageTypePropertyUpdater.SerializeValues(pageDefinition); pageDefinition.LongStringSettings = EditorToolOption.Bold; string returnedValue = pageTypePropertyUpdater.SerializeValues(pageDefinition); Assert.NotEqual <string>(valuesWithOutClearAllLongStringSettings, returnedValue); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionDisplayEditMode(bool displayInEditMode) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.DisplayInEditMode = displayInEditMode; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <bool>(propertyDefinition.PageTypePropertyAttribute.DisplayInEditMode, pageDefinitionToUpdate.DisplayEditUI); }
public void GivePropertyDefinitionWithNoEditCaption_UpdatePageDefinitionValues_SetsPageDefinitionEditCaptionToName() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.EditCaption = null; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <string>(propertyDefinition.Name, pageDefinitionToUpdate.EditCaption); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionFieldOrder(int sortOrder) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.SortOrder = sortOrder; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <int>(propertyDefinition.PageTypePropertyAttribute.SortOrder, pageDefinitionToUpdate.FieldOrder); }
public void GivenPropertyDefinition_UpdatePageDefinition_CallsUpdatePageDefinitionValues() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakeUpdatePageDefinitionValuesMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); pageTypePropertyUpdater.UpdatePageDefinition(pageDefinitionToUpdate, propertyDefinition); pageTypePropertyUpdater.AssertWasCalled( utility => utility.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition)); }
public void GivePropertyDefinitionWithNoLongStringSettings_UpdatePageDefinitionValues_SetLongStringSettingsToAll() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <EditorToolOption>( EditorToolOption.All, pageDefinitionToUpdate.LongStringSettings); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionLanguageSpecific(bool uniqueValuePerLanguage) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.UniqueValuePerLanguage = uniqueValuePerLanguage; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <bool>(propertyDefinition.PageTypePropertyAttribute.UniqueValuePerLanguage, pageDefinitionToUpdate.LanguageSpecific); }
public static PageTypeSynchronizer Create(PageTypePropertyUpdater pageTypePropertyUpdater, IPageTypeLocator pageTypeLocator) { return(new PageTypeSynchronizer( PageTypeDefinitionLocatorFactory.Create(), new PageTypeBuilderConfiguration(), pageTypePropertyUpdater, new PageTypeDefinitionValidator(new PageDefinitionTypeMapper(new PageDefinitionTypeFactory())), PageTypeResolver.Instance, pageTypeLocator, PageTypeUpdaterFactory.Create(), TabDefinitionUpdaterFactory.Create(), TabLocatorFactory.Create())); }
public void GivenPageType_UpdatePageTypePropertyDefinitions_CallsGetPageTypePropertyDefinitions() { List <PageTypePropertyDefinition> definitions = new List <PageTypePropertyDefinition>(); PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdater(definitions); IPageType pageType = new NativePageType(); PageTypeDefinition pageTypeDefinition = new PageTypeDefinition(); pageTypePropertyUpdater.UpdatePageTypePropertyDefinitions(pageType, pageTypeDefinition); pageTypePropertyUpdater.PageTypePropertyDefinitionLocator.AssertWasCalled( locator => locator.GetPageTypePropertyDefinitions( pageType, pageTypeDefinition.Type)); }
public void GivePropertyDefinitionWithNoLongStringSettingsAndClearAllLongStringSettings_UpdatePageDefinitionValues_SetLongStringSettingsToDefault() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.ClearAllLongStringSettings = true; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <EditorToolOption>( default(EditorToolOption), pageDefinitionToUpdate.LongStringSettings); }
public void GivePropertyDefinition_UpdatePageDefinitionValues_UpdatesPageDefinitionLongStringSettings( EditorToolOption longStringSettings) { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.LongStringSettings = longStringSettings; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <EditorToolOption>( propertyDefinition.PageTypePropertyAttribute.LongStringSettings, pageDefinitionToUpdate.LongStringSettings); }
public void GivenPropertyDefinitionWithNewEditCaption_UpdatePageDefinitionValues_UpdatedPageDefinitionEditCaption() { PageTypePropertyUpdater pageTypePropertyUpdater = CreatePageTypePropertyUpdaterWithFakeUpdatePageDefinitionTabMethod(); PageDefinition pageDefinitionToUpdate = new PageDefinition(); pageDefinitionToUpdate.EditCaption = TestValueUtility.CreateRandomString(); string newEditCaption = TestValueUtility.CreateRandomString(); PageTypePropertyDefinition propertyDefinition = CreatePageTypePropertyDefinition(); propertyDefinition.PageTypePropertyAttribute.EditCaption = newEditCaption; pageTypePropertyUpdater.UpdatePageDefinitionValues(pageDefinitionToUpdate, propertyDefinition); Assert.Equal <string>(newEditCaption, pageDefinitionToUpdate.EditCaption); }
private PageTypePropertyUpdater CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakeUpdatePageDefinitionValuesMethod() { MockRepository fakes = new MockRepository(); PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.PartialMock(fakes); pageTypePropertyUpdater.Stub( utility => utility.UpdatePageDefinitionValues( Arg <PageDefinition> .Is.Anything, Arg <PageTypePropertyDefinition> .Is.Anything)); pageTypePropertyUpdater.Replay(); PageDefinitionFactory fakeFactory = fakes.Stub <PageDefinitionFactory>(); fakeFactory.Stub(factory => factory.Save(Arg <PageDefinition> .Is.Anything)); fakeFactory.Replay(); pageTypePropertyUpdater.PageDefinitionFactory = fakeFactory; return(pageTypePropertyUpdater); }
public void GivenPageTypeWithPropertyAndCorrespondingPropertyDefition_GetExistingPropertyDefinition_ReturnsPageDefinition() { PageTypePropertyUpdater utility = PageTypePropertyUpdaterFactory.Create(); IPageType pageType = new NativePageType(); string name = TestValueUtility.CreateRandomString(); Type type = typeof(string); PageTypePropertyAttribute attribute = new PageTypePropertyAttribute(); PageTypePropertyDefinition pageTypePropertyDefinition = new PageTypePropertyDefinition(name, type, pageType, attribute); PageDefinition pageDefinition = new PageDefinition(); pageDefinition.Name = name; pageType.Definitions.Add(pageDefinition); PageDefinition returnedPageDefinition = utility.GetExistingPageDefinition(pageType, pageTypePropertyDefinition); Assert.Equal <PageDefinition>(pageDefinition, returnedPageDefinition); }
private PageTypePropertyUpdater CreatePageTypePropertyUpdaterWithFakePageDefinitionFactoryAndFakedSetPageDefinitionTypeMethod() { MockRepository fakes = new MockRepository(); PageDefinitionFactory fakePageDefinitionFactory = fakes.Stub <PageDefinitionFactory>(); fakePageDefinitionFactory.Stub(factory => factory.Save(Arg <PageDefinition> .Is.Anything)); fakePageDefinitionFactory.Replay(); PageTypePropertyUpdater partiallyMockedUtility = PageTypePropertyUpdaterFactory.PartialMock(fakes); partiallyMockedUtility.Stub( utility => utility.SetPageDefinitionType( Arg <PageDefinition> .Is.Anything, Arg <PageTypePropertyDefinition> .Is.Anything)); partiallyMockedUtility.PageDefinitionFactory = fakePageDefinitionFactory; partiallyMockedUtility.Replay(); return(partiallyMockedUtility); }
public void GivenPageTypePropertyDefinition_CreateNewPageDefinition_ReturnsPageDefinitionWithCorrectType2() { PageDefinitionType expectedPageDefintionType = new PageDefinitionType( 1, PropertyDataType.String, TestValueUtility.CreateRandomString()); PageTypePropertyDefinition pageTypePropertyDefinition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); PageDefinition pageDefinition = new PageDefinition(); MockRepository fakes = new MockRepository(); PageTypePropertyUpdater pageTypePropertyUpdater = PageTypePropertyUpdaterFactory.PartialMock(fakes); pageTypePropertyUpdater.Stub( utility => utility.GetPageDefinitionType(pageTypePropertyDefinition) ).Return(expectedPageDefintionType); pageTypePropertyUpdater.Replay(); pageTypePropertyUpdater.SetPageDefinitionType(pageDefinition, pageTypePropertyDefinition); Assert.Equal <PageDefinitionType>(expectedPageDefintionType, pageDefinition.Type); }
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; }