예제 #1
0
        public void givenContactDetail_updateInJsonServer_andDatabase()
        {
            AddressBookContactDetails contact = new AddressBookContactDetails();

            contact.firstName       = "Mahak";
            contact.lastName        = "Singla";
            contact.address         = "New Grain Market";
            contact.city            = "Barwala";
            contact.state           = "Haryana";
            contact.zip             = 125125;
            contact.phoneNo         = 7014245875;
            contact.eMail           = "*****@*****.**";
            contact.addressBookName = "A";

            //making a request for a particular employee to be updated
            RestRequest request = new RestRequest("AddressBook/4", Method.PUT);
            //creating a jobject for new data to be added in place of old
            //json represents a new json object
            JObject jObject = new JObject();

            jObject.Add("firstName", contact.firstName);
            jObject.Add("lastName", contact.lastName);
            jObject.Add("address", contact.address);
            jObject.Add("city", contact.city);
            jObject.Add("state", contact.state);
            jObject.Add("zip", contact.zip);
            jObject.Add("phoneNo", contact.phoneNo);
            jObject.Add("eMail", contact.eMail);
            jObject.Add("addressBookName", contact.addressBookName);
            //adding parameters in request
            //request body parameter type signifies values added using add.
            request.AddParameter("application/json", jObject, ParameterType.RequestBody);
            //executing request using client
            //IRest response act as a container for the data sent back from api.
            IRestResponse response = client.Execute(request);

            //checking status code of response
            Assert.AreEqual(response.StatusCode, System.Net.HttpStatusCode.OK);
            //deserializing content added in json file
            AddressBookContactDetails dataResponse = JsonConvert.DeserializeObject <AddressBookContactDetails>(response.Content);

            //asserting for salary
            Assert.AreEqual(dataResponse.address, "New Grain Market");
            //writing content without deserializing from resopnse.
            Console.WriteLine(response.Content);

            //updating data in database using threading
            AddressBookOperations addressBookOperations = new AddressBookOperations();

            addressBookOperations.UpdateContactDetailsInDataBase(contact);
            //checking if details are updated
            AddressBookContactDetails expected = addressBookOperations.GettingUpdatedDetails(contact);

            Assert.AreEqual(contact, expected);
        }
예제 #2
0
        public void CheckingIfContactDetailsAreGettingUpdated()
        {
            //calling update contact details
            //getting actual data
            AddressBookContactDetails actual         = UpdateContactDetails();
            AddressBookContactDetails contactDetails = new AddressBookContactDetails();

            //passing data to get updated contact details
            contactDetails.firstName       = "Vishal";
            contactDetails.lastName        = "Garg";
            contactDetails.addressBookName = "A";
            AddressBookOperations addressBookOperations = new AddressBookOperations();
            //getting expected data from address book operations -getting updated details
            AddressBookContactDetails expected = addressBookOperations.GettingUpdatedDetails(contactDetails);

            //assert
            Assert.AreEqual(expected, actual);
        }
예제 #3
0
        public void givenContactDetail_OnPost_ShouldBeAddedInJsonServer()
        {
            //instatiating object for address book operations
            AddressBookOperations addressBookOperations = new AddressBookOperations();
            //getting list of multiple contacts to be added in json server
            List <AddressBookContactDetails> contactDetails = addressBookOperations.GetAllContactDetails();

            //adding each entry in jsonserver
            contactDetails.ForEach(contact =>
            {
                //arrange
                //adding request to post(add) data
                RestRequest request = new RestRequest("/AddressBook", Method.POST);
                //instatiating jObject for adding data
                JObject jObject = new JObject();
                jObject.Add("firstName", contact.firstName);
                jObject.Add("lastName", contact.lastName);
                jObject.Add("address", contact.address);
                jObject.Add("city", contact.city);
                jObject.Add("state", contact.state);
                jObject.Add("zip", contact.zip);
                jObject.Add("phoneNo", contact.phoneNo);
                jObject.Add("eMail", contact.eMail);
                jObject.Add("addressBookName", contact.addressBookName);
                //as parameters are passed as body hence "request body" call is made, in parameter type
                request.AddParameter("application/json", jObject, ParameterType.RequestBody);
                //Act
                //request contains method of post and along with added parameter which contains data to be added
                //hence response will contain the data which is added and not all the data from jsonserver.
                //data is added to json server json file in this step.
                IRestResponse response = client.Execute(request);
                //assert
                //code will be 201 for posting data
                Assert.AreEqual(response.StatusCode, System.Net.HttpStatusCode.Created);
                //derserializing object for assert and checking test case
                AddressBookContactDetails dataResponse = JsonConvert.DeserializeObject <AddressBookContactDetails>(response.Content);
                Assert.AreEqual(contact.firstName, dataResponse.firstName);
                Assert.AreEqual(contact.phoneNo, dataResponse.phoneNo);
                Console.WriteLine(response.Content);
            });
        }
예제 #4
0
        /// <summary>
        /// Updates the contact details. UC17
        /// </summary>
        /// <returns></returns>
        public AddressBookContactDetails UpdateContactDetails()
        {
            //passing data for updating
            AddressBookContactDetails contactDetails = new AddressBookContactDetails();

            contactDetails.firstName       = "Vishal";
            contactDetails.lastName        = "Garg";
            contactDetails.address         = "Barwala";
            contactDetails.city            = "Hisar";
            contactDetails.state           = "Haryana";
            contactDetails.zip             = 125121;
            contactDetails.phoneNo         = 8570934858;
            contactDetails.eMail           = "vishal.garg";
            contactDetails.addressBookName = "A";
            //passing data to update method in address book operations
            AddressBookOperations addressBookOperations = new AddressBookOperations();
            bool result = addressBookOperations.UpdateContactDetailsInDataBase(contactDetails);

            Console.WriteLine(result);
            return(contactDetails);
        }