コード例 #1
0
        public void when_identical_should_not_merge()
        {
            var fixture = new Fixture();

            var contact1 = fixture.Create <Contact>();
            var clone    = (Contact)contact1.Clone();

            var target = new SimpleIdentityMerge();

            bool merged = target.Merge(contact1, clone);

            Assert.IsFalse(merged);
        }
コード例 #2
0
        public void when_left_incomplete_and_right_complete_should_merge_to_left()
        {
            var fixture = new Fixture();

            var contact1 = new Contact();
            var contact2 = fixture.Create <Contact>();

            var target = new SimpleIdentityMerge();

            bool merged = target.Merge(contact1, contact2);

            Assert.IsTrue(merged);
            AssertEx.AreEqualByJson(contact1, contact2);
        }
コード例 #3
0
        public void when_different_Phone_should_merge_both()
        {
            var fixture = new Fixture();

            var contact1 = fixture.Create <Contact>();
            var contact2 = (Contact)contact1.Clone();

            contact2.PhoneNumber = "+1 (202) 654-4987";

            string expected = contact1.PhoneNumber + ";" + contact2.PhoneNumber;

            var target = new SimpleIdentityMerge();

            bool merged = target.Merge(contact1, contact2);

            Assert.IsTrue(merged);
            Assert.AreEqual(expected, contact1.PhoneNumber);
        }
コード例 #4
0
        public void when_different_Emails_should_merge_both()
        {
            var fixture = new Fixture();

            var contact1 = fixture.Create <Contact>();
            var contact2 = (Contact)contact1.Clone();

            contact2.EmailAddress = "*****@*****.**";

            string expected = contact1.EmailAddress + ";" + contact2.EmailAddress;

            var target = new SimpleIdentityMerge();

            bool merged = target.Merge(contact1, contact2);

            Assert.IsTrue(merged);
            Assert.AreEqual(expected, contact1.EmailAddress);
        }