public void GivenPageTypePropertyDefinitionWithNoTypeAndNonMappedPropertyType_GetPageDefinitionType_ThrowsException() { PageDefinitionTypeMapper mapper = new PageDefinitionTypeMapper(null); Type unmappedType = typeof(StringBuilder); PageTypePropertyDefinition definition = new PageTypePropertyDefinition( TestValueUtility.CreateRandomString(), unmappedType, new NativePageType(), new PageTypePropertyAttribute()); Exception exception = Record.Exception(() => { mapper.GetPageDefinitionType(definition); }); Assert.NotNull(exception); }
public void GivenPageTypePropertyDefinitionWithNonNativeType_GetPageDefinitionType_ReturnsCorrectPageDefinitionType() { PageTypePropertyDefinition definition = PageTypePropertyUpdaterTestsUtility.CreatePageTypePropertyDefinition(); definition.PageTypePropertyAttribute.Type = typeof(PropertyXhtmlString); MockRepository fakes = new MockRepository(); PageDefinitionTypeFactory fakeFactory = fakes.Stub<PageDefinitionTypeFactory>(); PageDefinitionTypeMapper mapper = new PageDefinitionTypeMapper(fakeFactory); PageDefinitionType pageDefinitionTypeFromFactory = new PageDefinitionType(1, PropertyDataType.String, TestValueUtility.CreateRandomString()); string typeName = definition.PageTypePropertyAttribute.Type.FullName; string assemblyName = definition.PageTypePropertyAttribute.Type.Assembly.GetName().Name; fakeFactory.Stub(factory => factory.GetPageDefinitionType(typeName, assemblyName)).Return(pageDefinitionTypeFromFactory); fakeFactory.Replay(); PageDefinitionType returnedPageDefinitionType = mapper.GetPageDefinitionType(definition); Assert.Equal<PageDefinitionType>(pageDefinitionTypeFromFactory, returnedPageDefinitionType); }
protected internal virtual PageDefinitionType GetPageDefinitionType(PageTypePropertyDefinition definition) { return(PageDefinitionTypeMapper.GetPageDefinitionType(definition)); }