public async Task FindDerivedClassEntryTypedFilter()
        {
            var    client = new ODataClient(CreateDefaultSettings().WithHttpMock());
            string filter = await client.GetCommandTextAsync <Ship>("Transport/Ships", x => x.ShipName == "Titanic");

            var ship = await client.FindEntryAsync(filter);

            Assert.Equal("Titanic", ship["ShipName"]);
        }
        public async Task FindDerivedClassEntryDynamicFilter()
        {
            var    client = new ODataClient(CreateDefaultSettings().WithHttpMock());
            var    x      = ODataDynamic.Expression;
            string filter = await(Task <string>) client.GetCommandTextAsync("Transport/Ships", x.ShipName == "Titanic");
            var    ship   = await client.FindEntryAsync(filter);

            Assert.Equal("Titanic", ship["ShipName"]);
        }
        public async Task FindEntryExistingTypedFilter()
        {
            var    client = new ODataClient(CreateDefaultSettings().WithHttpMock());
            string filter = await client.GetCommandTextAsync <Product>("Products", x => x.ProductName == "Chai");

            var product = await client.FindEntryAsync(filter);

            Assert.Equal("Chai", product["ProductName"]);
        }
        public async Task FindEntryExistingDynamicFilter()
        {
            var    client  = new ODataClient(CreateDefaultSettings().WithHttpMock());
            var    x       = ODataDynamic.Expression;
            string filter  = await(Task <string>) client.GetCommandTextAsync("Products", x.ProductName == "Chai");
            var    product = await client.FindEntryAsync(filter);

            Assert.Equal("Chai", product["ProductName"]);
        }