public void ThenShouldReturnPropertyNameIfDoesNotHaveParent()
        {
            var stringPropInfo = typeof(SimpleDomain).GetProperties()
                .First(x => x.Name == "StringProp");

            var stringPropPath = new PropertyPathItem(stringPropInfo, PropertyPathItem.Root);

            stringPropPath.GetPathString().Should().Be("StringProp");
        }
        public void ThenShouldReturnDotSeparatedStringIfHasParent()
        {
            var stringPropInfo = typeof(SimpleDomain).GetProperties()
                .First(x => x.Name == "StringProp");

            var intPropInfo = typeof(SimpleDomain).GetProperties()
                .First(x => x.Name == "IntProp");

            var item1 = new PropertyPathItem(stringPropInfo, PropertyPathItem.Root);
            var item2 = new PropertyPathItem(intPropInfo, item1);
            var item3 = new PropertyPathItem(stringPropInfo, item2);

            item2.GetPathString().Should().Be("StringProp.IntProp");
            item3.GetPathString().Should().Be("StringProp.IntProp.StringProp");
        }