public void ShouldNotCountARootMemberAsRecursive()
        {
            var rootMember = new QualifiedMemberFactory(DefaultMapperContext)
                             .RootTarget <Person, PublicProperty <string> >();

            rootMember.IsRecursion.ShouldBeFalse();
        }
示例#2
0
 public MapperContext()
 {
     Cache  = new CacheSet();
     Naming = new NamingSettings(Cache);
     QualifiedMemberFactory = new QualifiedMemberFactory(this);
     RootMembersSource      = new RootMembersSource(QualifiedMemberFactory);
     ObjectMapperFactory    = new ObjectMapperFactory(Cache);
     UserConfigurations     = new UserConfigurationSet(this);
     ConstructionFactory    = new ComplexTypeConstructionFactory(Cache);
     ValueConverters        = new ConverterSet(UserConfigurations);
     RuleSets = MappingRuleSetCollection.Default;
 }
示例#3
0
        public void ShouldVarySourceMembersByTargetType()
        {
            var memberFactory = new QualifiedMemberFactory(DefaultMapperContext);

            var dictionaryToPersonArraySourceMember = memberFactory
                                                      .RootSource <Dictionary <string, Person[]>, Person[]>()
                                                      as DictionarySourceMember;

            dictionaryToPersonArraySourceMember.ShouldNotBeNull();

            // ReSharper disable once PossibleNullReferenceException
            dictionaryToPersonArraySourceMember.CouldContainSourceInstance.ShouldBeTrue();

            var dictionaryToObjectSourceMember = memberFactory
                                                 .RootSource <Dictionary <string, Person[]>, PersonViewModel[]>()
                                                 as DictionarySourceMember;

            dictionaryToObjectSourceMember.ShouldNotBeSameAs(dictionaryToPersonArraySourceMember);
        }
 public RootMembersSource(QualifiedMemberFactory memberFactory)
 {
     _memberFactory = memberFactory;
 }