public void SetValueForProperty_works()
        {
            var obj = new CloneClass();
            var date = DateTime.Now;

            obj.SetValueForProperty("TheInt", 1);
            obj.SetValueForProperty("TheString", "some string");
            obj.SetValueForProperty("TheDateTime", date);
            obj.SetValueForProperty("TheBool", true);
            obj.SetValueForProperty("TheDecimal", 1.1M);
            obj.SetValueForProperty("TheType", typeof(CloneClass));

            obj.TheInt.Should().Be(1);
            obj.TheString.Should().Be("some string");
            obj.TheDateTime.Should().Be(date);
            obj.TheBool.Should().Be(true);
            obj.TheDecimal.Should().Be(1.1M);
            obj.TheType.Should().Be(typeof(CloneClass));
        }
        public void SetValueForProperty_Returns_WhenTryingToSetPropertyThatDoesntExist()
        {
            var obj = new CloneClass();

            obj.SetValueForProperty("NonExistantProperty", "boom");
        }