Example #1
0
        public void Associate_GetAssociatedEntities()
        {
            ChangeSet changeSet = new ChangeSet(this.GenerateEntityOperations(true));

            MockEntity1     clientEntity1 = changeSet.ChangeSetEntries.Select(e => e.Entity).OfType <MockEntity1>().First();
            MockEntity2     clientEntity2 = changeSet.ChangeSetEntries.Select(e => e.Entity).OfType <MockEntity2>().First();
            MockStoreEntity storeEntity   = new MockStoreEntity();

            changeSet.Associate(clientEntity1, storeEntity, (c, s) => { });
            changeSet.Associate(clientEntity2, storeEntity, (c, s) => { });

            IEnumerable <MockEntity1> clientEntities1 = changeSet.GetAssociatedEntities <MockEntity1, MockStoreEntity>(storeEntity);

            Assert.IsNotNull(clientEntities1, "Expected to clientEntities1 to not be null.");
            Assert.AreEqual(1, clientEntities1.Count(), "Expected to find 1 clientEntity entry.");
            Assert.AreSame(clientEntity1, clientEntities1.Single(), "Expected to find clientEntity1.");

            IEnumerable <MockEntity2> clientEntities2 = changeSet.GetAssociatedEntities <MockEntity2, MockStoreEntity>(storeEntity);

            Assert.IsNotNull(clientEntities2, "Expected to clientEntities to not be null.");
            Assert.AreEqual(1, clientEntities2.Count(), "Expected to find 1 clientEntity entry.");
            Assert.AreSame(clientEntity2, clientEntities2.Single(), "Expected to find clientEntity2.");

            IEnumerable <object> clientEntities3 = changeSet.GetAssociatedEntities <object, MockStoreEntity>(storeEntity);

            Assert.IsNotNull(clientEntities3, "Expected to clientEntities to not be null.");
            Assert.AreEqual(2, clientEntities3.Count(), "Expected to find 2 clientEntity entries.");
            Assert.IsTrue(clientEntities3.Contains(clientEntity1), "Expected to find clientEntity1.");
            Assert.IsTrue(clientEntities3.Contains(clientEntity2), "Expected to find clientEntity2.");
        }
        private IEnumerable <ChangeSetEntry> GenerateEntityOperations(bool alternateTypes)
        {
            List <ChangeSetEntry> ops = new List <ChangeSetEntry>(10);

            int id = 1;

            for (int i = 0; i < ops.Capacity; ++i)
            {
                object entity, originalEntity;

                if (!alternateTypes || i % 2 == 0)
                {
                    entity = new MockEntity1()
                    {
                        FullName = String.Format("FName{0} LName{0}", i)
                    };
                    originalEntity = new MockEntity1()
                    {
                        FullName = String.Format("OriginalFName{0} OriginalLName{0}", i)
                    };
                }
                else
                {
                    entity = new MockEntity2()
                    {
                        FullNameAndID = String.Format("FName{0} LName{0} ID{0}", i)
                    };
                    originalEntity = new MockEntity2()
                    {
                        FullNameAndID = String.Format("OriginalFName{0} OriginalLName{0} OriginalID{0}", i)
                    };
                }

                ops.Add(new ChangeSetEntry {
                    Id = id++, Entity = entity, OriginalEntity = originalEntity, Operation = ChangeOperation.Update
                });
            }

            return(ops);
        }
Example #3
0
 protected bool Equals(MockEntity2 other)
 {
     return base.Equals(other) && string.Equals(FriendlyName, other.FriendlyName);
 }
        private IEnumerable<ChangeSetEntry> GenerateEntityOperations(bool alternateTypes)
        {
            List<ChangeSetEntry> ops = new List<ChangeSetEntry>(10);

            int id = 1;
            for (int i = 0; i < ops.Capacity; ++i)
            {
                object entity, originalEntity;

                if (!alternateTypes || i % 2 == 0)
                {
                    entity = new MockEntity1() { FullName = String.Format("FName{0} LName{0}", i) };
                    originalEntity = new MockEntity1() { FullName = String.Format("OriginalFName{0} OriginalLName{0}", i) };
                }
                else
                {
                    entity = new MockEntity2() { FullNameAndID = String.Format("FName{0} LName{0} ID{0}", i) };
                    originalEntity = new MockEntity2() { FullNameAndID = String.Format("OriginalFName{0} OriginalLName{0} OriginalID{0}", i) };
                }

                ops.Add(new ChangeSetEntry { Id = id++, Entity = entity, OriginalEntity = originalEntity, Operation = ChangeOperation.Update });
            }

            return ops;
        }
Example #5
0
 protected bool Equals(MockEntity2 other)
 {
     return(base.Equals(other) && string.Equals(FriendlyName, other.FriendlyName));
 }