public void Can_set_the_value_on_the_property_regardless_of_question_mark()
        {
            var person = new Person { ClientProfile = true };
            person.SetPropertyValue("Client Profile?", true);

            person.ClientProfile.ShouldEqual(true);
        }
        public void Can_set_the_value_on_the_property_regardless_of_hyphen()
        {
            var person = new Person { NoBreakSupplier = "Howard Roark" };
            person.SetPropertyValue("No-Break Supplier", "John Galt");

            person.NoBreakSupplier.ShouldEqual("John Galt");
        }
        public void Can_set_the_value_on_the_property_regardless_of_casing()
        {
            var person = new Person { FullName = "Howard Roark" };
            person.SetPropertyValue("full name", "John Galt");

            person.FullName.ShouldEqual("John Galt");
        }
        public void Can_set_the_value_on_the_property_regardless_of_spaces()
        {
            var person = new Person { FullName = "Howard Roark" };
            person.SetPropertyValue("Full Name", "John Galt");

            person.FullName.Should().Be("John Galt");
        }
        public void Can_set_the_value_on_the_property_through_SetPropertyValue()
        {
            const string expectedValue = "John Galt";

            var person = new Person { FullName = "Howard Roark" };
            person.SetPropertyValue("FullName", expectedValue);

            Assert.AreEqual(expectedValue, person.FullName);
        }