public void ModifyingContactsIsBooleanFieldsShouldNotAffectOtherIsBooleanFields()
        {
            var contactsProxy = new ContactsProxy();

            //Find Test contact to obtain their Id.
            var contactsResponse = AssertContactProxy(contactsProxy, givenName: "carl", familyName: "o'neil", contactId: "GLD879");

            Assert.IsTrue(contactsResponse.DataObject.Contacts.Count >= 1, "Incorrect number of contacts found.");

            var proxy = new ContactProxy();

            var testId   = contactsResponse.DataObject.Contacts[0].Id;
            var response = proxy.GetContact(testId.Value);

            Assert.IsNotNull(response);
            Assert.IsTrue(response.IsSuccessfull);
            Assert.IsNotNull(response.DataObject);

            // Now Modify the IsCustomer, IsContractor, IsSupplier, Is... fields and ensure setting one does not clear the other
            var testContact = response.DataObject;

            testContact.IsContractor = true;
            testContact.IsCustomer   = true;
            testContact.IsPartner    = true;
            testContact.IsSupplier   = true;
            var updateResponse = proxy.UpdateContact(testContact, testContact.Id.Value);

            Assert.IsNotNull(updateResponse);
            Assert.IsTrue(updateResponse.IsSuccessfull);

            var updatedResponse1 = proxy.GetContact(testContact.Id.Value);

            Assert.IsTrue(updatedResponse1.IsSuccessfull);
            Assert.AreEqual(testContact.IsContractor, updatedResponse1.DataObject.IsContractor);
            Assert.AreEqual(testContact.IsCustomer, updatedResponse1.DataObject.IsCustomer);
            Assert.AreEqual(testContact.IsPartner, updatedResponse1.DataObject.IsPartner);
            Assert.AreEqual(testContact.IsSupplier, updatedResponse1.DataObject.IsSupplier);

            testContact.LastUpdatedId = updateResponse.DataObject.LastUpdatedId;
            testContact.IsSupplier    = false;
            testContact.IsPartner     = false;
            var updateResponse2 = proxy.UpdateContact(testContact, testContact.Id.Value);

            Assert.IsNotNull(updateResponse2);
            Assert.IsTrue(updateResponse2.IsSuccessfull);

            var updatedResponse2 = proxy.GetContact(testContact.Id.Value);

            Assert.IsTrue(updatedResponse2.IsSuccessfull);
            Assert.AreEqual(testContact.IsContractor, updatedResponse2.DataObject.IsContractor);
            Assert.AreEqual(testContact.IsCustomer, updatedResponse2.DataObject.IsCustomer);
            Assert.AreEqual(testContact.IsPartner, updatedResponse2.DataObject.IsPartner);
            Assert.AreEqual(testContact.IsSupplier, updatedResponse2.DataObject.IsSupplier);
        }
Exemple #2
0
        public void ShouldBeAbleToPutToApiWithXml()
        {
            var contactHelper = new ContactHelper(false);
            var contact       = contactHelper.GetMinimalContact();

            contact.GivenName    = "SerializationTests";
            contact.FamilyName   = "PutToApiWithXml";
            contact.EmailAddress = "*****@*****.**";

            var proxy = new ContactProxy {
                ContentType = RequestContentType.ApplicationXml
            };
            var insertResponse = proxy.InsertContact(contact);

            Assert.True(insertResponse.DataObject.InsertedContactId > 0);

            var insertedContact = proxy.GetContact(insertResponse.DataObject.InsertedContactId);

            Assert.True(insertedContact.IsSuccessfull && insertedContact.DataObject != null);

            insertedContact.DataObject.GivenName = "NewNameWithXml";

            var updateResult = proxy.UpdateContact(insertedContact.DataObject, insertedContact.DataObject.Id.GetValueOrDefault());

            Assert.True(updateResult.IsSuccessfull);

            var updatedContact = proxy.GetContact(updateResult.DataObject.UpdatedContactId);

            Assert.True(updatedContact.IsSuccessfull);
            Assert.Equal("NewNameWithXml", updatedContact.DataObject.GivenName);
        }
        public void UpdateCompleteContact()
        {
            var contact = GetMinimalContact();

            var proxy          = new ContactProxy();
            var insertResponse = proxy.InsertContact(contact);

            Assert.IsTrue(insertResponse.IsSuccessfull);
            Assert.IsTrue(insertResponse.DataObject.InsertedContactId > 0);

            var insertedContact = proxy.GetContact(insertResponse.DataObject.InsertedContactId);

            insertedContact.DataObject.GivenName          = "Jack";
            insertedContact.DataObject.PostalAddress.City = "Potts Point";

            var tags = new List <string>();

            tags.Add("Banana");
            tags.Add("Pear");
            insertedContact.DataObject.Tags = tags;

            var updateResponse = proxy.UpdateContact(insertedContact.DataObject, insertResponse.DataObject.InsertedContactId);

            Assert.IsTrue(updateResponse.IsSuccessfull);
            //System.Threading.Thread.Sleep(1000);
            var updatedContact = proxy.GetContact(updateResponse.DataObject.UpdatedContactId);

            Assert.AreEqual(insertedContact.DataObject.GivenName, updatedContact.DataObject.GivenName);
            Assert.IsNotNull(updatedContact.DataObject.PostalAddress);
            Assert.AreEqual(insertedContact.DataObject.PostalAddress.City, updatedContact.DataObject.PostalAddress.City);
        }