public void Test_ToXml()
        {
            var testChildObject = new TestChildObject();

            testChildObject.Name             = "Somename";
            testChildObject.Location         = "Somelocation";
            testChildObject.TelephoneNumbers = new List <string>();
            testChildObject.TelephoneNumbers.Add("202-555-1212");
            testChildObject.TelephoneNumbers.Add("301-555-1212");

            var serializedXml = testChildObject.ToXml();

            Assert.IsTrue(!string.IsNullOrWhiteSpace(serializedXml));
            Assert.IsTrue(serializedXml.Contains("<Name>Somename</Name>"));
            Assert.IsTrue(serializedXml.Contains("<Location>Somelocation</Location>"));
            Assert.IsTrue(serializedXml.Contains("<TelephoneNumbers>"));
            Assert.IsTrue(serializedXml.Contains("<string>202-555-1212</string>"));
            Assert.IsTrue(serializedXml.Contains("<string>301-555-1212</string>"));
            Assert.IsTrue(serializedXml.Contains("</TelephoneNumbers>"));


            //<?xml version="1.0"?>
            //<TestChildObject xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            //  <Name>Somename</Name>
            //  <Location>Somelocation</Location>
            //  <TelephoneNumbers>
            //    <string>202-555-1212</string>
            //    <string>301-555-1212</string>
            //  </TelephoneNumbers>
            //</TestChildObject>
        }
        public void Test_TrimstringValues()
        {
            var testObject = new TestChildObject()
            {
                Location = "Somewhere ", Name = "Somename "
            };

            testObject.TrimStringValues();

            Assert.AreEqual(testObject.Location, "Somewhere");
            Assert.AreEqual(testObject.Name, "Somename");
        }
        public void Test_ShallowCopy()
        {
            var testObject = new TestObject()
            {
                Name = "Somename "
            };
            var testChildObject = new TestChildObject();

            testObject.ShallowCopy <TestObject, TestChildObject>(testChildObject);

            Assert.AreEqual(testObject.Name, testChildObject.Name);

            var testObject2 = new TestObject();

            testObject.ShallowCopy <TestObject, TestObject>(testObject2);
            Assert.AreEqual(testObject.Name, testObject2.Name);
        }