public void the_prefix_is_always_the_root_type_and_the_suffx_the_path_to_a_property()
        {
            var customer = new Customer();
            Expression <Func <object> > expr = () => customer.MainOrder.Lines;
            var property = new PropertyPathForIteratorVisitor().BuildPropertyPath(expr);

            property.TypePrefix.ShouldBe("Customer");
            property.TypeSuffix.ShouldBe("MainOrder.Lines");
        }
        public void indexers_are_serialzied_after_a_semi_column()
        {
            var customer = new Customer();
            Expression <Func <object> > expr = () => customer.Orders[0].Lines;
            var property = new PropertyPathForIteratorVisitor().BuildPropertyPath(expr);

            property.TypePrefix.ShouldBe("Customer");
            property.TypeSuffix.ShouldBe("Orders:0.Lines");
        }
        public void the_prefix_and_suffix_starts_at_the_current_extension_method()
        {
            var customer = new Customer();
            Expression <Func <object> > expr = () => customer.Orders.Current().Lines;
            var property = new PropertyPathForIteratorVisitor().BuildPropertyPath(expr);

            property.TypePrefix.ShouldBe("Order");
            property.TypeSuffix.ShouldBe("Lines");
        }