示例#1
0
        public void ResolveMapper2_ExistingMapper_ResolvesCorrectly()
        {
            var target = new MappingRepository();
            var mapper = target.ResolveMapper(typeof(TTarget), typeof(TSource));

            Assert.IsNotNull(mapper);
            Assert.IsInstanceOf <CompositeMapper <TTarget, TSource> >(mapper);
            Assert.IsTrue(((CompositeMapper <TTarget, TSource>)mapper).InnerMappers.Any());
        }
示例#2
0
        public void AddMapperTest()
        {
            IExtensibleMapper <TSource, TTarget> expected = new ManualMapper <TSource, TTarget>();
            var target = new MappingRepository();

            target.AddMapper(expected);
            var actual = target.ResolveMapper <TSource, TTarget>();

            Assert.AreEqual(expected, actual);
        }
示例#3
0
        public void Sample_FluentMappingViaMapper_MapsCorrectly()
        {
            var mappingRepo = new MappingRepository();
            var source      = this.CreateSource();
            var mapper      = mappingRepo.ResolveMapper <Person, PersonEditModel>();

            mapper.AddMapping()
            .From(p => p.FirstName + p.LastName)
            .To(pi => pi.Name);

            var result = mapper.Map(source);

            MappingRepository.Default.Clear();
            result.ShouldNotBe(null);
            this.CheckMapping(source, result);
            result.Name.ShouldBe(source.FirstName + source.LastName);
        }
示例#4
0
        public void Sample_SingleMapperSequenceOverride_CreatesCorrectly()
        {
            var source = this.CreateSource();

            var repo = new MappingRepository(o =>
                                             o.MapperOrder
                                             .UseJust <ManualMapper <object, object> >()
                                             );

            repo.AddMapping <Person, PersonEditModel>()
            .From(s => 111)
            .To(t => t.Id);

            var mapper = repo.ResolveMapper <Person, PersonEditModel>();

            var result = mapper.Map(source);

            result.ShouldNotBe(null);
            result.Id.ShouldBe(111);
        }
示例#5
0
        public void Sample_SingleMapperSequenceOverride_CreatesCorrectly()
        {
            var source = this.CreateSource();

            var repo = new MappingRepository(o =>
                o.MapperOrder
                    .UseJust<ManualMapper<object, object>>()
                    );

            repo.AddMapping<Person, PersonEditModel>()
                .From(s => 111)
                .To(t => t.Id);

            var mapper = repo.ResolveMapper<Person, PersonEditModel>();

            var result = mapper.Map(source);

            result.ShouldNotBe(null);
            result.Id.ShouldBe(111);
        }
示例#6
0
        public void Sample_FluentMappingViaMapper_MapsCorrectly()
        {
            var mappingRepo = new MappingRepository();
            var source = this.CreateSource();
            var mapper = mappingRepo.ResolveMapper<Person, PersonEditModel>();
            mapper.AddMapping()
                .From(p => p.FirstName + p.LastName)
                .To(pi => pi.Name);

            var result = mapper.Map(source);

            MappingRepository.Default.Clear();
            result.ShouldNotBe(null);
            this.CheckMapping(source, result);
            result.Name.ShouldBe(source.FirstName + source.LastName);
        }