public void GetParametersTest()
        {
            FavoritesRequestProcessor <Favorites> target = new FavoritesRequestProcessor <Favorites>()
            {
                BaseUrl = "http://twitter.com/"
            };
            Expression <Func <Favorites, bool> > expression =
                fav =>
                fav.Type == FavoritesType.Favorites &&
                fav.Page == 1 &&
                fav.ID == "123";
            LambdaExpression lambdaExpression = expression as LambdaExpression;

            var queryParams = target.GetParameters(lambdaExpression);

            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>("Type", ((int)FavoritesType.Favorites).ToString())));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>("Page", "1")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>("ID", "123")));
        }
        public void GetParameters_Handles_Input_Parameters()
        {
            var favReqProc = new FavoritesRequestProcessor <Favorites> {
                BaseUrl = "https://api.twitter.com/1.1/"
            };
            Expression <Func <Favorites, bool> > expression =
                fav =>
                fav.Type == FavoritesType.Favorites &&
                fav.UserID == 123ul &&
                fav.ScreenName == "JoeMayo" &&
                fav.Count == 100 &&
                fav.SinceID == 456 &&
                fav.MaxID == 789 &&
                fav.IncludeEntities == true &&
                fav.TweetMode == TweetMode.Extended;
            var lambdaExpression = expression as LambdaExpression;

            var queryParams = favReqProc.GetParameters(lambdaExpression);

            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.Type), ((int)FavoritesType.Favorites).ToString(CultureInfo.InvariantCulture))));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.UserID), "123")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.ScreenName), "JoeMayo")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.Count), "100")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.SinceID), "456")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.MaxID), "789")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.IncludeEntities), "True")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair <string, string>(nameof(Favorites.TweetMode), ((int)TweetMode.Extended).ToString(CultureInfo.InvariantCulture))));
        }
        public void GetParameters_Handles_Input_Parameters()
        {
            var favReqProc = new FavoritesRequestProcessor<Favorites> { BaseUrl = "https://api.twitter.com/1.1/" };
            Expression<Func<Favorites, bool>> expression =
                fav =>
                    fav.Type == FavoritesType.Favorites &&
                    fav.UserID == 123ul &&
                    fav.ScreenName == "JoeMayo" &&
                    fav.Count == 100 &&
                    fav.SinceID == 456 &&
                    fav.MaxID == 789 &&
                    fav.IncludeEntities == true;
            var lambdaExpression = expression as LambdaExpression;

            var queryParams = favReqProc.GetParameters(lambdaExpression);

            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("Type", ((int)FavoritesType.Favorites).ToString(CultureInfo.InvariantCulture))));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("UserID", "123")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("ScreenName", "JoeMayo")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("Count", "100")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("SinceID", "456")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("MaxID", "789")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("IncludeEntities", "True")));
        }
        public void GetParametersTest()
        {
            FavoritesRequestProcessor<Favorites> target = new FavoritesRequestProcessor<Favorites>() { BaseUrl = "http://twitter.com/" };
            Expression<Func<Favorites, bool>> expression =
                fav =>
                    fav.Type == FavoritesType.Favorites &&
                    fav.Page == 1 &&
                    fav.ID == "123";
            LambdaExpression lambdaExpression = expression as LambdaExpression;

            var queryParams = target.GetParameters(lambdaExpression);

            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("Type", ((int)FavoritesType.Favorites).ToString())));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("Page", "1")));
            Assert.IsTrue(
                queryParams.Contains(
                    new KeyValuePair<string, string>("ID", "123")));
        }