예제 #1
0
        public void TestGetRelatedBusinessObjectCollection_SortOrder_ChangeOrder()
        {
            //---------------Set up test pack-------------------
            ClassDef.ClassDefs.Clear();
            ContactPersonTestBO.LoadClassDefWithAddressesRelationship_SortOrder_AddressLine1();
            ContactPersonTestBO cp       = ContactPersonTestBO.CreateSavedContactPersonNoAddresses();
            AddressTestBO       address1 = new AddressTestBO();

            address1.ContactPersonID = cp.ContactPersonID;
            address1.AddressLine1    = "ffff";
            address1.Save();
            AddressTestBO address2 = new AddressTestBO();

            address2.ContactPersonID = cp.ContactPersonID;
            address2.AddressLine1    = "bbbb";
            address2.Save();

            //---------------Assert PreConditions---------------
            RelatedBusinessObjectCollection <AddressTestBO> addresses = cp.Addresses;

            Assert.AreEqual(2, addresses.Count);
            Assert.AreSame(address1, addresses[1]);
            Assert.AreSame(address2, addresses[0]);

            //---------------Execute Test ----------------------
            address2.AddressLine1 = "zzzzz";
            address2.Save();
            RelatedBusinessObjectCollection <AddressTestBO> addressesAfterChangeOrder = cp.Addresses;

            //---------------Test Result -----------------------

            Assert.AreSame(address1, addressesAfterChangeOrder[0]);
            Assert.AreSame(address2, addressesAfterChangeOrder[1]);
        }