public void BuildUrl_Handles_String_TweetMode()
        {
            const string ExpectedUrl   = "https://api.twitter.com/1.1/search/tweets.json?q=LINQ%20to%20Twitter&geocode=40.757929%2C-73.985506%2C25km&lang=en&count=10&until=2011-07-04&since_id=1&result_type=popular&include_entities=false&tweet_mode=extended";
            var          searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/"
            };
            var parameters =
                new Dictionary <string, string>
            {
                { "Type", SearchType.Search.ToString() },
                { "GeoCode", "40.757929,-73.985506,25km" },
                { "SearchLanguage", "en" },
                { "Count", "10" },
                { "Query", "LINQ to Twitter" },
                { "SinceID", "1" },
                { "Until", new DateTime(2011, 7, 4).ToString() },
                { "ResultType", ResultType.Popular.ToString() },
                { "IncludeEntities", false.ToString() },
                { nameof(Search.TweetMode), TweetMode.Extended.ToString().ToLower() }     // "extended" string, not "1"
            };

            Request req = searchReqProc.BuildUrl(parameters);

            Assert.AreEqual(ExpectedUrl, req.FullUrl);
        }
示例#2
0
        public void BuildUrl_Throws_When_Parameters_Null()
        {
            var searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/search/"
            };

            L2TAssert.Throws <NullReferenceException>(() =>
            {
                searchReqProc.BuildUrl(null);
            });
        }
示例#3
0
        public void BuildUrl_Throws_When_Parameters_Null()
        {
            var searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/search/"
            };

            ArgumentException ex =
                Assert.Throws <ArgumentException>(() =>
            {
                searchReqProc.BuildUrl(null);
            });

            Assert.Equal("Type", ex.ParamName);
        }
示例#4
0
        public void BuildUrl_Throws_With_Missing_Type_Parameter()
        {
            var searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/search/"
            };
            var parameters = new Dictionary <string, string> {
            };

            ArgumentException ex =
                Assert.Throws <ArgumentException>(() =>
            {
                searchReqProc.BuildUrl(parameters);
            });

            Assert.Equal("Type", ex.ParamName);
        }
示例#5
0
        public void BuildUrl_Encodes_Query()
        {
            var searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/"
            };
            string expected   = searchReqProc.BaseUrl + "search/tweets.json?q=Contains%20Space";
            var    parameters =
                new Dictionary <string, string>
            {
                { "Type", SearchType.Search.ToString() },
                { "Query", "Contains Space" }
            };

            Request req = searchReqProc.BuildUrl(parameters);

            Assert.AreEqual(expected, req.FullUrl);
        }
示例#6
0
        public void BuildUrl_Adds_True_IncludeEntities()
        {
            var searchProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/"
            };
            const string Expected   = "https://api.twitter.com/1.1/search/tweets.json?q=LINQ%20to%20Twitter&include_entities=true";
            var          parameters =
                new Dictionary <string, string>
            {
                { "Type", SearchType.Search.ToString() },
                { "Query", "LINQ to Twitter" },
                { "IncludeEntities", true.ToString(CultureInfo.InvariantCulture) }
            };

            Request req = searchProc.BuildUrl(parameters);

            Assert.AreEqual(Expected, req.FullUrl);
        }
示例#7
0
        public void BuildUrl_Requires_Query()
        {
            var searchReqProc = new SearchRequestProcessor <Search> {
                BaseUrl = "https://api.twitter.com/1.1/search/"
            };
            var parameters =
                new Dictionary <string, string>
            {
                { "Type", SearchType.Search.ToString() },
                { "Query", null }
            };

            ArgumentException ex =
                L2TAssert.Throws <ArgumentNullException>(() =>
                                                         searchReqProc.BuildUrl(parameters));

            Assert.AreEqual("Query", ex.ParamName);
        }
        public void BuildUrl_Includes_Parameters()
        {
            const string ExpectedUrl = "https://api.twitter.com/1.1/search/tweets.json?q=LINQ%20to%20Twitter&geocode=40.757929%2C-73.985506%2C25km&lang=en&count=10&until=2011-07-04&since_id=1&result_type=popular&include_entities=false";
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };
            var parameters =
                new Dictionary<string, string>
                {
                    { "Type", SearchType.Search.ToString() },
                    { "GeoCode", "40.757929,-73.985506,25km" },
                    { "SearchLanguage", "en" },
                    { "Count", "10" },
                    { "Query", "LINQ to Twitter" },
                    { "SinceID", "1" },
                    { "Until", new DateTime(2011, 7, 4).ToString() },
                    { "ResultType", ResultType.Popular.ToString() },
                    { "IncludeEntities", false.ToString() }
               };

            Request req = searchReqProc.BuildUrl(parameters);

            Assert.Equal(ExpectedUrl, req.FullUrl);
        }
        public void BuildUrl_Throws_With_Missing_Type_Parameter()
        {
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };
            var parameters = new Dictionary<string, string> { };

            ArgumentException ex =
                Assert.Throws<ArgumentException>(() =>
                {
                    searchReqProc.BuildUrl(parameters);
                });

            Assert.Equal("Type", ex.ParamName);
        }
        public void BuildUrl_Throws_When_Parameters_Null()
        {
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };

            ArgumentException ex =
                Assert.Throws<ArgumentException>(() =>
                {
                    searchReqProc.BuildUrl(null);
                });

            Assert.Equal("Type", ex.ParamName);
        }
        public void BuildUrl_Encodes_Query()
        {
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };
            string expected = searchReqProc.BaseUrl + "tweets.json?q=Contains%20Space";
            var parameters =
                new Dictionary<string, string>
                {
                    { "Type", SearchType.Search.ToString() },
                    { "Query", "Contains Space" }
                };

            Request req = searchReqProc.BuildUrl(parameters);

            Assert.Equal(expected, req.FullUrl);
        }
        public void BuildUrl_Adds_True_IncludeEntities()
        {
            var searchProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };
            var parameters =
                new Dictionary<string, string>
                {
                    { "Type", SearchType.Search.ToString() },
                    { "IncludeEntities", true.ToString(CultureInfo.InvariantCulture) }
                };
            const string Expected = "https://api.twitter.com/1.1/search/tweets.json?include_entities=true";

            Request req = searchProc.BuildUrl(parameters);

            Assert.Equal(Expected, req.FullUrl);
        }
        public void BuildUrl_Throws_When_Parameters_Null()
        {
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };

            L2TAssert.Throws<NullReferenceException>(() =>
            {
                searchReqProc.BuildUrl(null);
            });
        }
        public void BuildUrl_Requires_Query()
        {
            var searchReqProc = new SearchRequestProcessor<Search> { BaseUrl = "https://api.twitter.com/1.1/search/" };
            var parameters =
                new Dictionary<string, string>
                {
                    { "Type", SearchType.Search.ToString() },
                    { "Query", null }
                };

            ArgumentException ex =
                L2TAssert.Throws<ArgumentNullException>(() =>
                    searchReqProc.BuildUrl(parameters));

            Assert.AreEqual("Query", ex.ParamName);
        }