public void FindKeywordAndPosition()
        {
            var keywords = new AhoCorasickTree(new[] { "Mozilla", "6.3", "KHTML", "someKeyword" });
            var userAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36";
            var keywordsPositions = keywords.Search(userAgent).ToList();

            Assert.Equal(3, keywordsPositions.Count);
            Assert.Contains(new KeyValuePair<string, int>("Mozilla", 0), keywordsPositions);
            Assert.Contains(new KeyValuePair<string, int>("6.3", 24), keywordsPositions);
            Assert.Contains(new KeyValuePair<string, int>("KHTML", 56), keywordsPositions);
        }
        public void FindKeywordAndPosition()
        {
            var keywords          = new AhoCorasickTree(new[] { "Mozilla", "6.3", "KHTML", "someKeyword" });
            var userAgent         = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36";
            var keywordsPositions = keywords.Search(userAgent).ToList();

            Assert.Equal(3, keywordsPositions.Count);
            Assert.Contains(new KeyValuePair <string, int>("Mozilla", 0), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("6.3", 24), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("KHTML", 56), keywordsPositions);
        }
 public void FindKeywordAndPositionFromWikipedia()
 {
     var keywords = new AhoCorasickTree(new[] { "a", "ab", "bab", "bc", "bca", "c", "caa" });
     var keywordsPositions = keywords.Search("abccab").ToList();
     Assert.Equal(7, keywordsPositions.Count);
     Assert.Contains(new KeyValuePair<string, int>("a", 0), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("ab", 0), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("bc", 1), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("c", 2), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("c", 3), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("a", 4), keywordsPositions);
     Assert.Contains(new KeyValuePair<string, int>("ab", 4), keywordsPositions);
 }
        public void FindKeywordAndPositionFromWikipedia()
        {
            var keywords          = new AhoCorasickTree(new[] { "a", "ab", "bab", "bc", "bca", "c", "caa" });
            var keywordsPositions = keywords.Search("abccab").ToList();

            Assert.Equal(7, keywordsPositions.Count);
            Assert.Contains(new KeyValuePair <string, int>("a", 0), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("ab", 0), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("bc", 1), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("c", 2), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("c", 3), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("a", 4), keywordsPositions);
            Assert.Contains(new KeyValuePair <string, int>("ab", 4), keywordsPositions);
        }