예제 #1
0
        public void MeHas3BiGramTest()
        {
            var index = new NGramSearch.IntersectionCountIndex <long>(2);

            index.Add(1, "me");
            index.Add(2, "you");

            var result = index.Search("me");

            Assert.Single(result);
            Assert.Equal(1, result.Single().Id);
            Assert.Equal(3, result.Single().Similarity); // _m me e_
        }
예제 #2
0
        public void SimpleCount()
        {
            var source = new NGramSearch.IntersectionCountIndex <string>();

            source.Add("first", "aaaa");
            source.Add("second", "bbbb");

            var result = source.Search("aaa");

            Assert.Single(result);
            Assert.Equal("first", result.First().Id);
            Assert.Equal(3, result.First().Similarity); // _aa aaa aa_
        }
예제 #3
0
        public void RobertHas5FourGrams()
        {
            var actors = new NGramSearch.IntersectionCountIndex <int>(4);

            actors.Add(1, "johnny depp");
            actors.Add(2, "al pacino");
            actors.Add(3, "robert de niro");
            actors.Add(4, "kevin spacey");


            var result = actors.Search("robert");

            Assert.Single(result);
            Assert.Equal(3, result.First().Id);
            Assert.Equal(5, result.First().Similarity); // _rob robe ober bert ert_
        }