public void ProcessResults_Populates_Entities()
        {
            var twitterUserProc = new TwitterUserRequestProcessor <TwitterUserQuery> {
                BaseUrl = BaseUrl2
            };

            List <TwitterUserQuery> results = twitterUserProc.ProcessResults(UsersJson);

            Assert.IsNotNull(results);
            TwitterUserQuery twitterUserQuery = results.SingleOrDefault();

            Assert.IsNotNull(twitterUserQuery);

            List <TwitterUser> users = twitterUserQuery.Users;

            Assert.IsNotNull(users);
            Assert.AreEqual(2, users.Count);
            TwitterUser user = users.FirstOrDefault();

            Assert.IsNotNull(user);
            TwitterUserEntity entities = user.Entities;

            Assert.IsNotNull(entities);

            TweetEntityUrl url = entities?.Url?.Urls?.FirstOrDefault();

            Assert.IsNotNull(url);
            Assert.AreEqual(0, url.Start);
            Assert.AreEqual(23, url.End);
            Assert.AreEqual("https://t.co/Y6dXyWxanS", url.Url);
            Assert.AreEqual("https://github.com/JoeMayo", url.ExpandedUrl);
            Assert.AreEqual("github.com/JoeMayo", url.DisplayUrl);

            TweetEntityHashtag hashtag = entities?.Description?.Hashtags?.FirstOrDefault();

            Assert.IsNotNull(hashtag);
            Assert.AreEqual(108, hashtag.Start);
            Assert.AreEqual(111, hashtag.End);
            Assert.AreEqual("ai", hashtag.Tag);
        }
Exemple #2
0
        public void ProcessResults_Populates_Entities()
        {
            var tweetProc = new TweetRequestProcessor <TweetQuery> {
                BaseUrl = BaseUrl2
            };

            List <TweetQuery> results = tweetProc.ProcessResults(SingleTweet);

            Assert.IsNotNull(results);
            TweetQuery tweetQuery = results.SingleOrDefault();

            Assert.IsNotNull(tweetQuery);

            List <Tweet> tweets = tweetQuery.Tweets;

            Assert.IsNotNull(tweets);
            Assert.AreEqual(1, tweets.Count);
            Tweet tweet = tweets.FirstOrDefault();

            Assert.IsNotNull(tweet);
            TweetEntities entities = tweet.Entities;

            Assert.IsNotNull(entities);

            TweetEntityAnnotation annotation = entities?.Annotations?.FirstOrDefault();

            Assert.IsNotNull(annotation);
            Assert.AreEqual(53, annotation.Start);
            Assert.AreEqual(59, annotation.End);
            Assert.AreEqual(0.5865f, annotation.Probability);
            Assert.AreEqual("Organization", annotation.Type);
            Assert.AreEqual("Twitter", annotation.NormalizedText);

            TweetEntityMention mention = entities?.Mentions?.FirstOrDefault();

            Assert.IsNotNull(mention);
            Assert.AreEqual(7, mention.Start);
            Assert.AreEqual(14, mention.End);
            Assert.AreEqual("github", mention.Username);

            TweetEntityUrl url = entities?.Urls?.FirstOrDefault();

            Assert.IsNotNull(url);
            Assert.AreEqual(62, url.Start);
            Assert.AreEqual(85, url.End);
            Assert.AreEqual("https://t.co/jWeDEN07HN", url.Url);
            Assert.AreEqual("http://bit.ly/1b2wrHb", url.ExpandedUrl);
            Assert.AreEqual("bit.ly/1b2wrHb", url.DisplayUrl);
            Assert.AreEqual(200, url.Status);
            Assert.AreEqual("JoeMayo/LinqToTwitter", url.Title);
            Assert.AreEqual("LINQ Provider for the Twitter API (Twitter Library) - JoeMayo/LinqToTwitter", url.Description);
            Assert.AreEqual("https://github.com/JoeMayo/LinqToTwitter", url.UnwoundUrl);
            List <TweetEntityImage> images = url.Images;

            Assert.IsNotNull(images);
            Assert.AreEqual(2, images.Count);
            TweetEntityImage image = images.First();

            Assert.AreEqual("https://pbs.twimg.com/news_img/1321470110356287488/pWdfwBk5?format=png&name=orig", image.Url);
            Assert.AreEqual(100, image.Width);
            Assert.AreEqual(100, image.Height);
        }