public void WhenNotRegisteredAsManyToOneRecognizeRelation()
 {
     var mapper = new ObjectRelationalMapper();
     mapper.TablePerClass<AEntity>();
     mapper.TablePerClass<BEntity>();
     mapper.IsOneToMany(typeof(BEntity), typeof(AEntity)).Should().Be.True();
     mapper.IsManyToOne(typeof(AEntity), typeof(BEntity)).Should().Be.True();
 }
Пример #2
0
        public void WhenNotRegisteredAsManyToOneRecognizeRelation()
        {
            var mapper = new ObjectRelationalMapper();

            mapper.TablePerClass <AEntity>();
            mapper.TablePerClass <BEntity>();
            mapper.IsOneToMany(typeof(BEntity), typeof(AEntity)).Should().Be.True();
            mapper.IsManyToOne(typeof(AEntity), typeof(BEntity)).Should().Be.True();
        }
        public void CanDiscoverManyToOneFromComponentToEntity()
        {
            var orm = new ObjectRelationalMapper();
            orm.TablePerClass<AEntity>();
            orm.TablePerClass<BEntity>();
            orm.Component<AComponent>();

            orm.IsManyToOne(typeof(AComponent), typeof(BEntity)).Should().Be.True();
        }
        public void WhenFindInterfaceForRootClassThenRecognizeRelation()
        {
            var orm = new ObjectRelationalMapper();
            orm.TablePerClass<Contact>();
            orm.TablePerClass<UserGroup>();
            orm.ManyToOne<UserGroup, ISecurity>();

            orm.IsManyToOne(typeof (UserGroup), typeof (ISecurity)).Should().Be.True();
        }
        public void WhenUnidirectionalOneToOneThenShouldBeManyToOne()
        {
            var orm = new ObjectRelationalMapper();
            orm.TablePerClass(new[] {typeof (MyClass), typeof (MyOneClass)});
            orm.OneToOne<MyClass, MyOneClass>();

            orm.IsOneToOne(typeof (MyClass), typeof (MyOneClass)).Should().Be.False();
            orm.IsManyToOne(typeof(MyClass), typeof(MyOneClass)).Should().Be.True();
            orm.IsMasterOneToOne(typeof(MyClass), typeof(MyOneClass)).Should().Be.True();
        }
        public void WhenFindInterfaceForRootClassThenRecognizeRelation()
        {
            var orm = new ObjectRelationalMapper();

            orm.TablePerClass <Contact>();
            orm.TablePerClass <UserGroup>();
            orm.ManyToOne <UserGroup, ISecurity>();

            orm.IsManyToOne(typeof(UserGroup), typeof(ISecurity)).Should().Be.True();
        }
Пример #7
0
        public void CanDiscoverManyToOneFromComponentToEntity()
        {
            var orm = new ObjectRelationalMapper();

            orm.TablePerClass <AEntity>();
            orm.TablePerClass <BEntity>();
            orm.Component <AComponent>();

            orm.IsManyToOne(typeof(AComponent), typeof(BEntity)).Should().Be.True();
        }
Пример #8
0
        public void WhenUnidirectionalOneToOneThenShouldBeManyToOne()
        {
            var orm = new ObjectRelationalMapper();

            orm.TablePerClass(new[] { typeof(MyClass), typeof(MyOneClass) });
            orm.OneToOne <MyClass, MyOneClass>();

            orm.IsOneToOne(typeof(MyClass), typeof(MyOneClass)).Should().Be.False();
            orm.IsManyToOne(typeof(MyClass), typeof(MyOneClass)).Should().Be.True();
            orm.IsMasterOneToOne(typeof(MyClass), typeof(MyOneClass)).Should().Be.True();
        }
Пример #9
0
        public void WhenCircularRelationThenIsManyToOneAndNotHeterogeneous()
        {
            var orm = new ObjectRelationalMapper();

            orm.TablePerClass <Animal>();
            orm.ManyToMany <Human, Human>();
            orm.AddToDomain(new[] { typeof(Animal), typeof(Reptile), typeof(Lizard), typeof(Mammal), typeof(Human), typeof(DomesticAnimal), typeof(Cat), typeof(Dog) });
            orm.IsManyToOne(typeof(Animal), typeof(Animal)).Should().Be.True();
            orm.IsHeterogeneousAssociation(ForClass <Animal> .Property(x => x.Mother)).Should().Be.False();
            orm.IsHeterogeneousAssociation(ForClass <Animal> .Property(x => x.Father)).Should().Be.False();
        }
        public void WhenExplicitManyToManyThenShouldMapSimpleRelationAsManyToOneByDefault()
        {
            var orm = new ObjectRelationalMapper();
            orm.TablePerClass<User>();
            orm.TablePerClass<Group>();
            orm.ManyToMany<Group, User>();

            orm.IsManyToOne(typeof(Group), typeof(User)).Should().Be.True();
            orm.IsManyToMany(typeof(Group), typeof(User)).Should().Be.True();
            orm.IsOneToMany(typeof(Group), typeof(User)).Should().Be.False();
            orm.IsOneToOne(typeof(Group), typeof(User)).Should().Be.False();
            orm.IsManyToMany(typeof(User), typeof(Group)).Should().Be.True();
            orm.IsOneToMany(typeof(User), typeof(Group)).Should().Be.False();
        }
Пример #11
0
        public void WhenExplicitManyToManyThenShouldMapSimpleRelationAsManyToOneByDefault()
        {
            var orm = new ObjectRelationalMapper();

            orm.TablePerClass <User>();
            orm.TablePerClass <Group>();
            orm.ManyToMany <Group, User>();

            orm.IsManyToOne(typeof(Group), typeof(User)).Should().Be.True();
            orm.IsManyToMany(typeof(Group), typeof(User)).Should().Be.True();
            orm.IsOneToMany(typeof(Group), typeof(User)).Should().Be.False();
            orm.IsOneToOne(typeof(Group), typeof(User)).Should().Be.False();
            orm.IsManyToMany(typeof(User), typeof(Group)).Should().Be.True();
            orm.IsOneToMany(typeof(User), typeof(Group)).Should().Be.False();
        }
 public void RecognizeManyToOne()
 {
     orm.IsManyToOne(typeof(Child), typeof(Parent)).Should().Be.True();
 }