public void ObjectHierarchyNavigateManyToOne() { DerivedClassWithEntityWithHierarchy derivedClassWithEntity2 = _derivedClassWithEntity2ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity2.ParentAbstractBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); Assert.That(derivedClassWithEntity2.ParentDerivedClassWithEntityWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); DerivedClassWithEntityWithHierarchy derivedClassWithEntity3 = _derivedClassWithEntity3ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity3.ParentAbstractBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); Assert.That(derivedClassWithEntity3.ParentDerivedClassWithEntityWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass1 = _derivedClassWithEntityFromBaseClass1ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass1.ParentAbstractBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); Assert.That(derivedClassWithEntityFromBaseClass1.ParentDerivedClassWithEntityWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity1ID)); DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass2 = _derivedClassWithEntityFromBaseClass2ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass2.ParentAbstractBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity2ID)); Assert.That(derivedClassWithEntityFromBaseClass2.ParentDerivedClassWithEntityWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity2ID)); Assert.That(derivedClassWithEntityFromBaseClass2.ParentDerivedClassWithEntityFromBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass1ID)); DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass3 = _derivedClassWithEntityFromBaseClass3ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass3.ParentAbstractBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity3ID)); Assert.That(derivedClassWithEntityFromBaseClass3.ParentDerivedClassWithEntityWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntity3ID)); Assert.That(derivedClassWithEntityFromBaseClass3.ParentDerivedClassWithEntityFromBaseClassWithHierarchy.ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass1ID)); }
public void UnidirectionalRelationToAbstractClass() { DerivedClassWithEntityWithHierarchy derivedClassWithEntity1 = _derivedClassWithEntity1ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity1.FileSystemItemFromAbstractBaseClass.ID, Is.EqualTo(_rootFolderID)); using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope()) { derivedClassWithEntity1 = _derivedClassWithEntity1ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity1.FileSystemItemFromDerivedClassWithEntity.ID, Is.EqualTo(_fileInRootFolderID)); } using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope()) { DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass1 = _derivedClassWithEntityFromBaseClass1ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass1.FileSystemItemFromDerivedClassWithEntityFromBaseClass.ID, Is.EqualTo(_fileInFolder1ID)); } }
public void UnidirectionalRelationToClassWithoutDerivation() { ObjectID client2 = CreateObjectID(typeof(TIClient), "{58535280-84EC-41d9-9F8F-BCAC64BB3709}"); DerivedClassWithEntityWithHierarchy derivedClassWithEntity1 = _derivedClassWithEntity1ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity1.ClientFromAbstractBaseClass.ID, Is.EqualTo(DomainObjectIDs.Client)); using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope()) { derivedClassWithEntity1 = _derivedClassWithEntity1ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity1.ClientFromDerivedClassWithEntity.ID, Is.EqualTo(client2)); } using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope()) { DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass1 = _derivedClassWithEntityFromBaseClass1ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass1.ClientFromDerivedClassWithEntityFromBaseClass.ID, Is.EqualTo(DomainObjectIDs.Client)); } }
public void ObjectHierarchyNavigateOneToMany() { DerivedClassWithEntityWithHierarchy derivedClassWithEntity1 = _derivedClassWithEntity1ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity1.ChildAbstractBaseClassesWithHierarchy.Count, Is.EqualTo(3)); Assert.That(derivedClassWithEntity1.ChildAbstractBaseClassesWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntity3ID)); Assert.That(derivedClassWithEntity1.ChildAbstractBaseClassesWithHierarchy[1].ID, Is.EqualTo(_derivedClassWithEntity2ID)); Assert.That(derivedClassWithEntity1.ChildAbstractBaseClassesWithHierarchy[2].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass1ID)); Assert.That(derivedClassWithEntity1.ChildDerivedClassesWithEntityWithHierarchy.Count, Is.EqualTo(3)); Assert.That(derivedClassWithEntity1.ChildDerivedClassesWithEntityWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass1ID)); Assert.That(derivedClassWithEntity1.ChildDerivedClassesWithEntityWithHierarchy[1].ID, Is.EqualTo(_derivedClassWithEntity2ID)); Assert.That(derivedClassWithEntity1.ChildDerivedClassesWithEntityWithHierarchy[2].ID, Is.EqualTo(_derivedClassWithEntity3ID)); DerivedClassWithEntityWithHierarchy derivedClassWithEntity2 = _derivedClassWithEntity2ID.GetObject <DerivedClassWithEntityWithHierarchy>(); DerivedClassWithEntityWithHierarchy derivedClassWithEntity3 = _derivedClassWithEntity3ID.GetObject <DerivedClassWithEntityWithHierarchy>(); Assert.That(derivedClassWithEntity2.ChildAbstractBaseClassesWithHierarchy.Count, Is.EqualTo(1)); Assert.That(derivedClassWithEntity2.ChildAbstractBaseClassesWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass2ID)); Assert.That(derivedClassWithEntity2.ChildDerivedClassesWithEntityWithHierarchy.Count, Is.EqualTo(1)); Assert.That(derivedClassWithEntity2.ChildDerivedClassesWithEntityWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass2ID)); Assert.That(derivedClassWithEntity3.ChildAbstractBaseClassesWithHierarchy.Count, Is.EqualTo(1)); Assert.That(derivedClassWithEntity3.ChildAbstractBaseClassesWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass3ID)); Assert.That(derivedClassWithEntity3.ChildDerivedClassesWithEntityWithHierarchy.Count, Is.EqualTo(1)); Assert.That(derivedClassWithEntity3.ChildDerivedClassesWithEntityWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass3ID)); DerivedClassWithEntityFromBaseClassWithHierarchy derivedClassWithEntityFromBaseClass1 = _derivedClassWithEntityFromBaseClass1ID.GetObject <DerivedClassWithEntityFromBaseClassWithHierarchy> (); Assert.That(derivedClassWithEntityFromBaseClass1.ChildAbstractBaseClassesWithHierarchy, Is.Empty); Assert.That(derivedClassWithEntityFromBaseClass1.ChildDerivedClassesWithEntityWithHierarchy, Is.Empty); Assert.That(derivedClassWithEntityFromBaseClass1.ChildDerivedClassesWithEntityFromBaseClassWithHierarchy.Count, Is.EqualTo(2)); Assert.That(derivedClassWithEntityFromBaseClass1.ChildDerivedClassesWithEntityFromBaseClassWithHierarchy[0].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass2ID)); Assert.That(derivedClassWithEntityFromBaseClass1.ChildDerivedClassesWithEntityFromBaseClassWithHierarchy[1].ID, Is.EqualTo(_derivedClassWithEntityFromBaseClass3ID)); }