public void IsOrphan_one_to_many_relation_entity_true()
        {
            MockEntity     entity           = new MockEntity();
            MockEntity     relationalEntity = new MockEntity();
            string         entityPath       = ".RelationalEntities[Guid=" + relationalEntity.Guid + "]";
            PropertyChange change           = new PropertyChange(entityPath, string.Empty, string.Empty, relationalEntity, null);

            Assert.IsTrue(change.IsOrphan(entity));
        }
        public void IsOrphan_many_to_one_many_to_one_relation_entity_true()
        {
            string     after  = "Address Line 1";
            MockEntity entity = new MockEntity();

            entity.RelationalEntity1 = null;
            PropertyChange change = new PropertyChange(".RelationalEntity1.RelationalEntity1", "StringProperty", null, null, after, entity.State);

            Assert.IsTrue(change.IsOrphan(entity));
        }
        public void IsOrphan_many_to_one_relation_property_different_guid_true()
        {
            string     after  = "Site Name";
            MockEntity entity = new MockEntity();

            entity.RelationalEntity1 = new MockEntity();
            PropertyChange change = new PropertyChange(".RelationalEntity1", "StringProperty", Guid.NewGuid().ToString(), null, after, entity.State);

            Assert.IsTrue(change.IsOrphan(entity));
        }
        public void IsOrphan_many_to_one_relation_property_false()
        {
            string     after  = "Site Name";
            MockEntity entity = new MockEntity();

            entity.RelationalEntity1 = new MockEntity()
            {
                StringProperty = after
            };
            PropertyChange change = new PropertyChange(".RelationalEntity1", "StringProperty", entity.RelationalEntity1.Guid, null, after, entity.State);

            Assert.IsFalse(change.IsOrphan(entity));
        }
        public void IsOrphan_one_to_many_relation_property_true()
        {
            string     after            = "true";
            MockEntity entity           = new MockEntity();
            MockEntity relationalEntity = new MockEntity()
            {
                StringProperty = after
            };
            string         entityPath   = ".RelationalEntities[Guid=" + relationalEntity.Guid + "]";
            string         propertyName = "StringProperty";
            PropertyChange change       = new PropertyChange(entityPath, propertyName, string.Empty, null, after);

            Assert.IsTrue(change.IsOrphan(entity));
        }
        public void IsOrphan_one_to_many_many_to_one_relation_entity_false()
        {
            MockEntity entity            = new MockEntity();
            MockEntity manyToOneRelation = new MockEntity();
            MockEntity oneToManyRelation = new MockEntity()
            {
                RelationalEntity1 = manyToOneRelation
            };

            entity.RelationalEntities.Add(oneToManyRelation);
            string         entityPath = ".RelationalEntities[Guid=" + oneToManyRelation.Guid + "].RelationalEntity1";
            PropertyChange change     = new PropertyChange(entityPath, string.Empty, manyToOneRelation.Guid, null, manyToOneRelation);

            Assert.IsFalse(change.IsOrphan(entity));
        }