public void RelationshipToLoad_ShouldParseNestedFirstExpressions()
        {
            Expression <Func <Order, object> > loadExp =
                o => o.OrderItems.First().ItemReceipt;

            var rtl = new RelationshipLoadRequest(loadExp);

            Assert.AreEqual(4, rtl.TypePath.Count);
            Assert.AreEqual("OrderItem-OrderItems-Receipt-ItemReceipt", rtl.EntityTypePath);
        }
        public void EntityTypePath_ShouldHandle_OneToOne_Relationships()
        {
            Expression <Func <Invoice, object> > loadExp =
                i => i.Header.Customer;

            var rtl = new RelationshipLoadRequest(loadExp);

            Assert.AreEqual(4, rtl.TypePath.Count);
            Assert.AreEqual("InvoiceHeader-Header-Customer-Customer", rtl.EntityTypePath);
        }
        public void RelationshipToLoad_OrderItems()
        {
            Expression <Func <Order, object> > loadExp =
                o => o.OrderItems;

            var rtl = new RelationshipLoadRequest(loadExp);

            Assert.AreEqual(2, rtl.TypePath.Count);
            Assert.AreEqual("OrderItem-OrderItems", rtl.EntityTypePath);
        }