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 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(); }
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 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 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(); }
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(); }