public void Can_Set_Property_Value()
        {
            var classInstance = new HumanTestPoco();
            var obj           = new ObjectBuilder(classInstance);

            obj.WithA("Name").Of("Elliott").AndA("Age").Of(100);

            Assert.Equal(obj.Instance.Name, "Elliott");
            Assert.Equal(obj.Instance.Age, 100);
        }
        public void Can_Set_NameOn_PetProperty()
        {
            var classInstance = new HumanTestPoco();
            var obj           = new ObjectBuilder(classInstance);

            obj.WithA("Pet.Name").Of("Elliott")
            .AndA("Pet.AnimalType").Of("Turtle")
            .AndA("Age").Of(100);

            Assert.Equal(obj.Instance.Pet.Name, "Elliott");
            Assert.Equal(obj.Instance.Age, 100);
            Assert.Equal(obj.Instance.Pet.AnimalType, "Turtle");
        }
        public void Can_Create_Item_In_NestedCollectionProperty()
        {
            var classInstance = new HumanTestPoco();
            var obj           = new ObjectBuilder(classInstance);

            obj.WithACollection("Pets")
            .WithAnItemThatHasA("Name", "Frank The Tank")
            .WithAChildCollection("Friends")
            .WithAnItemThatHasA("AnimalType", "Fish");


            Assert.Equal(obj.Instance.Pets[0].Name, "Frank The Tank");
            Assert.Equal(obj.Instance.Pets[0].Friends[0].AnimalType, "Fish");
        }
        public void Can_Create_Item_In_CollectionProperty()
        {
            var classInstance = new HumanTestPoco();
            var obj           = new ObjectBuilder(classInstance);

            obj.WithACollection("Pets")
            .WithAnItemThatHasA("Name", "Frank The Tank")
            .AndA("AnimalType", "Cow")
            .WithA("Age").Of(100)
            .AndA("Name").Of("Elliott");

            Assert.Equal(obj.Instance.Pets[0].Name, "Frank The Tank");
            Assert.Equal(obj.Instance.Pets[0].AnimalType, "Cow");
            Assert.Equal(obj.Instance.Age, 100);
            Assert.Equal(obj.Instance.Name, "Elliott");
        }