Builds a URI to search the items in Nutritionix
Inheritance: NutritionixUri
        public void ToString_DoesNotContainEmptyParameters()
        {
            var request = new NutritionixSearchRequest { Query = "myQuery" };
            var uri = new SearchUri("myId", "myKey", request);
            var result = uri.ToString();

            Assert.IsFalse(result.Contains("results="), "Result range should not be in the URI since no explicit value was specified.");
        }
        public void ToString_ContainsQuery()
        {
            var request = new NutritionixSearchRequest {Query = "myQuery"};
            var uri = new SearchUri("myId", "myKey", request);
            var result = uri.ToString();

            Assert.IsTrue(result.Contains("/myQuery?"));
        }
        public void ToString_ContainsBrandId()
        {
            var request = new NutritionixSearchRequest { BrandId = "myBrandId"};
            var uri = new SearchUri("myId", "myKey", request);
            var result = uri.ToString();

            Assert.IsTrue(result.Contains("brand_id=myBrandId"));
        }
        public void ToString_ContainsQuery()
        {
            var request = new SearchRequest {Query = "myQuery"};
            var uri = new SearchUri("myId", "myKey", request);

            string result = uri.ToString();

            StringAssert.Contains("/myQuery?", result);
        }
        public void ToString_ContainsBrandId()
        {
            var request = new SearchRequest { BrandId = "myBrandId"};
            var uri = new SearchUri("myId", "myKey", request);

            string result = uri.ToString();

            StringAssert.Contains("brand_id=myBrandId", result);
        }
        public void ToString_ContainsStart()
        {
            var request = new NutritionixSearchRequest { Query = "myQuery", Start = 100, Count = 50};
            var uri = new SearchUri("myId", "myKey", request);
            var result = uri.ToString();

            result = HttpUtility.UrlDecode(result);

            Assert.IsTrue(result.Contains("results=100:150"));
        }
        public void ToString_ContainsCount()
        {
            var request = new SearchRequest {Query = "myQuery", Count = 20};
            var uri = new SearchUri("myId", "myKey", request);

            string result = uri.ToString();
            result = HttpUtility.UrlDecode(result);

            StringAssert.Contains("results=0:20", result);
        }
        public void ToString_ContainsExcludedAllergens()
        {
            var request = new SearchRequest
            {
                Query = "myQuery",
                ExcludeAllergens = new List<Allergen> {Allergen.Eggs, Allergen.Fish}
            };
            var uri = new SearchUri("myId", "myKey", request);

            string result = uri.ToString();

            StringAssert.Contains("allergen_contains_eggs", result);
            StringAssert.Contains("allergen_contains_fish", result);
        }