public void ParseLinks_MissingProtocol_MissingSubDomain_ValidTLD_CreateLink() { const string tweet = "sometext ghostmonk.com/somemorestuff"; const string expectedResult = "sometext <a href='http://ghostmonk.com/somemorestuff' target='_blank'>ghostmonk.com/somemorestuff</a>"; Assert.AreEqual(expectedResult, TweetParser.ParseLinks(tweet)); }
public void ParseAmpersands_ValidFormat_CreateTwitterLink() { const string tweet = "sometext @ghostmonk moretext@ghostmonk"; const string expectedResult = "sometext <a href='http://www.twitter.com/ghostmonk' target='_blank'>@ghostmonk</a> moretext@ghostmonk"; Assert.AreEqual(expectedResult, TweetParser.CreateSymbolLinks("@", tweet)); }
public void ParseLinks_MissingProtocol_CreateLink() { const string tweet = "sometext www.ghostmonk.com/somemorestuff.html"; const string expectedResult = "sometext <a href='http://www.ghostmonk.com/somemorestuff.html' target='_blank'>www.ghostmonk.com/somemorestuff.html</a>"; Assert.AreEqual(expectedResult, TweetParser.ParseLinks(tweet)); }
public void ParseHashTags_ValidHashTag_CreatesTwitterLink() { const string tweet = "#hash sometext #hash"; const string expectedResult = "<a href='http://www.twitter.com/search?q=hash' target='_blank'>#hash</a> sometext <a href='http://www.twitter.com/search?q=hash' target='_blank'>#hash</a>"; Assert.AreEqual(expectedResult, TweetParser.CreateSymbolLinks("#", tweet)); }
public void Given_Same_Hashtag_Is_Mentioned_Multiple_Times_Only_Single_Occurence_Returned() { var tweet = "test #hashtag and one more #hashtag"; var tweetParser = new TweetParser(); var hashtags = tweetParser.GetHashtags(tweet).ToList(); Assert.That(hashtags.Count, Is.EqualTo(1)); }
public void TweetParser_Parse() { string testHtml = FileIO.ReadToEnd("samples/tweets_html.txt"); var parser = new TweetParser <Tweet>(); var tweets = parser.Parse(testHtml); Assert.NotNull(tweets); Assert.NotEmpty(tweets); }
public void Given_Tweet_Contains_Hashtag_It_Is_Correctly_Parsed() { var tweet = "test #hashtag."; var tweetParser = new TweetParser(); var hashtags = tweetParser.GetHashtags(tweet).ToList(); Assert.That(hashtags.Count, Is.EqualTo(1)); Assert.That(hashtags.Single(), Is.EqualTo("hashtag")); }
public void Given_Tweet_Contains_Mention_It_Is_Correctly_Parsed() { var tweet = "test @mention!"; var tweetParser = new TweetParser(); var mentions = tweetParser.GetMentions(tweet).ToList(); Assert.That(mentions.Count, Is.EqualTo(1)); Assert.That(mentions.Single(), Is.EqualTo("mention")); }
public void Given_Tweet_Contains_Url_It_Is_Correctly_Parsed() { var tweet = "test http://localhost url"; var tweetParser = new TweetParser(); var urls = tweetParser.GetUrls(tweet).ToList(); Assert.That(urls.Count, Is.EqualTo(1)); Assert.That(urls.Single(), Is.EqualTo("http://localhost")); }
public void SearchAllTypes_ValidFormat_ReturnsFormattedString() { const string tweet = "@ghostmonk sometext @ghostmonk @ghostmonk moretext@ghostmonk #hash http://www.ghostmonk.com"; const string expectedResult = "<a href='http://www.twitter.com/ghostmonk' target='_blank'>@ghostmonk</a> sometext " + "<a href='http://www.twitter.com/ghostmonk' target='_blank'>@ghostmonk</a> <a href='http://www.twitter.com/ghostmonk' target='_blank'>@ghostmonk</a> " + "moretext@ghostmonk <a href='http://www.twitter.com/search?q=hash' target='_blank'>#hash</a> " + "<a href='http://www.ghostmonk.com' target='_blank'>http://www.ghostmonk.com</a>"; string actualResult = TweetParser.ParseTweet(tweet); Debug.Write(actualResult); Assert.AreEqual(expectedResult, actualResult); }
public static Country Parse(string path) { List <State> states = new List <State>(); State state = new State(); Polygon polygon = new Polygon(); bool flag = false; string temp = string.Empty; string jsonString = File.ReadAllText(path); jsonString = DeleteAnotherBrackets(DeleteUselessBrackets(jsonString)); for (int i = 0; i < jsonString.Length; i++) { if (temp.Length == 0 && jsonString[i] == ']') { continue; } if (jsonString[i] >= 65 && jsonString[i] <= 90) { state.Name = jsonString[i].ToString() + jsonString[i + 1]; i++; } if ((jsonString[i] == '[' && jsonString[i + 1] == '[' && jsonString[i + 2] == '[') || flag == true) { if (jsonString[i] != ']') { flag = true; temp += jsonString[i]; } else { temp += jsonString[i]; polygon.Points.Add(TweetParser.СoordinatesParse(temp)); temp = string.Empty; if (jsonString[i + 1] == ']') { state.Polygons.Add(new Polygon(polygon)); polygon.Points.Clear(); } if (jsonString[i + 2] == ']') { states.Add(new State(state)); state.Polygons.Clear(); flag = false; } } } } return(new Country(states)); }
public void Start() { string fileName = ConfigurationManager.AppSettings["tweets"]; string[] stringTweets = File.ReadAllText(fileName).Split(new[] { Environment.NewLine }, StringSplitOptions.None); IList <Tweet> tweets = new List <Tweet>(); IParser <Tweet> parser = new TweetParser(); foreach (string tweet in stringTweets) { tweets.Add(parser.Parse(tweet)); } SentimentsParser.Parse(tweets, Context.Sentiments); StateFinder.Find(tweets, Context.StatesPolygons); Context.StatesSentiments = StatesEvaluator.Evaluate(tweets, Context.StatesPolygons.Keys); }
public StatusViewModel(TwitterClient client, TweetParser tweetParser, IWindowManager windowManager) { _client = client; _tweetParser = tweetParser; _windowManager = windowManager; }
public Tweet Extract() => TweetParser.ParseTweet(Element.GetAttribute("content-desc"));
public async Task StartNewState() { tweets = TweetParser.Parse(Path); country = ExtraFuncs.GroupTweetsByStates(tweets, @"..\..\..\Data\States\states.json"); }
public void ParseHashTags_InvalidHashTag_NoLinkCreated() { const string expectedResult = "invalid#hash"; Assert.AreEqual(expectedResult, TweetParser.CreateSymbolLinks("#", expectedResult)); }
public IsValidTweetLengthToBrushConverter() { _parser = Execute.InDesignMode ? new TweetParser() : IoC.Get <TweetParser>(); }
public StateDao(string filepath) { db = Db.GetInstance(filepath); db.Tweets = TweetParser.Parse(filepath, db.Sentiments); StateParser.GroupTweetsByStates(db.States, db.Tweets); }
public CharactersRemainingConverter() { _parser = Execute.InDesignMode ? new TweetParser() : IoC.Get <TweetParser>(); }
public List <Tweet> GetTweets() { return(TweetParser.ParseTweets(fileName)); }