コード例 #1
0
        public void MapProperty_Expression_Action_SourcePropertyIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Act
            //Assert
            typeMapPropertyConfiguration.MapProperty(null, null);
        }
コード例 #2
0
        public void MapProperty_Expression_Action_SourcePropertyIsNotOneLevelMemberExpression_ThrowsArgumentException()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Act
            //Assert
            typeMapPropertyConfiguration.MapProperty((MainEntity o) => (object)o.SubEntity.Simple,
                delegate(MainEntity source, MainEntityModel dest, TypeMappingContext context)
                {
                });
        }
コード例 #3
0
        public void MapProperty_Expression_Action_GoodValues_ReturnsTypeMapPropertyConfiguration()
        {
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Act
            var typeMapPropertyConfiguration2 = typeMapPropertyConfiguration.MapProperty((MainEntity o)
                => (object)o.Simple, delegate(MainEntity source, MainEntityModel dest, TypeMappingContext context)
                {
                });

            //Assert
            Assert.AreEqual<TypeMap>(map, typeMapPropertyConfiguration2.Map);
            Assert.IsNull(typeMapPropertyConfiguration2.Map.Mapper);
            Assert.AreEqual<Type>(map.SourceType, typeMapPropertyConfiguration2.Map.SourceType);
            Assert.AreEqual<Type>(map.DestinationType, typeMapPropertyConfiguration2.Map.DestinationType);
            Assert.AreEqual<int>(1, typeMapPropertyConfiguration2.Map.PropertyMaps.Count);
            Assert.AreEqual<MemberInfo>(ReflectionHelper.GetMemberInfo<MainEntity, int>((MainEntity o) => o.Simple),
                typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().SourcePropertyInfo);
            Assert.IsNotNull(typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().Mapper);
            Assert.IsNull(typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().DestinationPropertyInfo);
            Assert.AreEqual<int>(0, typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().InheritanceMaps.Count);
        }
コード例 #4
0
        public void MapProperty_Expression_Expression_IEnumerable_DestinationPropertyIsNotOneLevelMemberExpression_ThrowsArgumentException()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Act
            //Assert
            typeMapPropertyConfiguration.MapProperty((MainEntity o) => (object)o.Simple,
                (MainEntityModel o) => (object)o.SubEntity.Simple, new TypeMap[]
                {
                    MapBuilder.Instance.CreateMap<SubEntity, SubSubEntityModel>().Map
                });
        }
コード例 #5
0
        public void TypeMapPropertyConfiguration_GoodValues_Succeeds()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            //Act
            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Assert
            Assert.AreEqual<Type>(typeof(MainEntity), typeMapPropertyConfiguration.Map.SourceType);
            Assert.AreEqual<Type>(typeof(MainEntityModel), typeMapPropertyConfiguration.Map.DestinationType);
            Assert.AreEqual<int>(0, typeMapPropertyConfiguration.Map.PropertyMaps.Count);
        }
コード例 #6
0
        public void MapProperty_Expression_Expression_IEnumerable_InheritanceMapsIsNull_ThrowsArgumentNullException()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            //Act
            //Assert
            typeMapPropertyConfiguration.MapProperty((MainEntity o) => o.SubEntity, (MainEntityModel o) => o.SubEntity, null);
        }
コード例 #7
0
        public void MapProperty_Expression_Expression_IEnumerable_GoodValues_ReturnsTypeMapPropertyConfiguration()
        {
            //Arrange
            var map = MapBuilder.Instance.CreateMap<MainEntity, MainEntityModel>().Map;

            var typeMapPropertyConfiguration = new TypeMapPropertyConfiguration<MainEntity, MainEntityModel>(map);

            var map2 = MapBuilder.Instance.CreateMap<SubEntity, SubSubEntityModel>().Map;

            //Act
            var typeMapPropertyConfiguration2 = typeMapPropertyConfiguration.MapProperty(
                (MainEntity o) => o.SubEntity, (MainEntityModel o) => o.SubEntity, new TypeMap[]
                {
                    map2
                });

            //Assert
            Assert.AreEqual<TypeMap>(map, typeMapPropertyConfiguration2.Map);
            Assert.IsNull(typeMapPropertyConfiguration2.Map.Mapper);
            Assert.AreEqual<Type>(map.SourceType, typeMapPropertyConfiguration2.Map.SourceType);
            Assert.AreEqual<Type>(map.DestinationType, typeMapPropertyConfiguration2.Map.DestinationType);
            Assert.AreEqual<int>(1, typeMapPropertyConfiguration2.Map.PropertyMaps.Count);
            Assert.AreEqual<MemberInfo>(ReflectionHelper.GetMemberInfo<MainEntity, SubEntity>((MainEntity o) => o.SubEntity), typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().SourcePropertyInfo);
            Assert.IsNull(typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().Mapper);
            Assert.AreEqual<MemberInfo>(ReflectionHelper.GetMemberInfo<MainEntityModel, SubEntityModel>((MainEntityModel o) => o.SubEntity), typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().DestinationPropertyInfo);
            Assert.IsNull(typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().InheritanceMaps.Single<TypeMap>().Mapper);
            Assert.AreEqual<int>(0, typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().InheritanceMaps.Single<TypeMap>().PropertyMaps.Count);
            Assert.AreEqual<Type>(map2.SourceType, typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().InheritanceMaps.Single<TypeMap>().SourceType);
            Assert.AreEqual<Type>(map2.DestinationType, typeMapPropertyConfiguration2.Map.PropertyMaps.Single<PropertyMap>().InheritanceMaps.Single<TypeMap>().DestinationType);
        }