DoStandardHighlights() public method

public DoStandardHighlights ( Analyzer analyzer, IndexSearcher searcher, TopDocs hits, Query query, IFormatter formatter ) : void
analyzer Lucene.Net.Analysis.Analyzer
searcher IndexSearcher
hits TopDocs
query Query
formatter IFormatter
return void
Exemplo n.º 1
0
        public void TestGetBestFragmentsFilteredPhraseQuery()
        {
            var helper = new TestHighlightRunner();
            helper.TestAction = () =>
                                    {
                                        numHighlights = 0;
                                        var rf = new TermRangeFilter("contents", "john", "john", true, true);
                                        var pq = new PhraseQuery();
                                        pq.Add(new Term("contents", "john"));
                                        pq.Add(new Term("contents", "kennedy"));
                                        var fq = new FilteredQuery(pq, rf);

                                        DoSearching(fq);
                                        helper.DoStandardHighlights(analyzer, searcher, hits, query, this);
                                        // Currently highlights "John" and "Kennedy" separately
                                        Assert.IsTrue(numHighlights == 2,
                                                      "Failed to find correct number of highlights " + numHighlights +
                                                      " found");
                                    };

            helper.Start();
        }
Exemplo n.º 2
0
 public void TestGetBestFragmentsWithOr()
 {
     var helper = new TestHighlightRunner();
     helper.TestAction = () =>
                             {
                                 numHighlights = 0;
                                 DoSearching("JFK OR Kennedy");
                                 helper.DoStandardHighlights(analyzer, searcher, hits, query, this);
                                 Assert.IsTrue(numHighlights == 5,
                                               "Failed to find correct number of highlights " + numHighlights +
                                               " found");
                             };
     helper.Start();
 }
Exemplo n.º 3
0
        public void TestGetBestFragmentsFilteredQuery()
        {
            var helper = new TestHighlightRunner();
            helper.TestAction = () =>
                                    {
                                        numHighlights = 0;
                                        TermRangeFilter rf = new TermRangeFilter("contents", "john", "john", true, true);
                                        SpanQuery[] clauses = {
                                                                  new SpanTermQuery(new Term("contents", "john")),
                                                                  new SpanTermQuery(new Term("contents", "kennedy"))
                                                              };
                                        SpanNearQuery snq = new SpanNearQuery(clauses, 1, true);
                                        FilteredQuery fq = new FilteredQuery(snq, rf);

                                        DoSearching(fq);
                                        helper.DoStandardHighlights(analyzer, searcher, hits, query, this);
                                        // Currently highlights "John" and "Kennedy" separately
                                        Assert.IsTrue(numHighlights == 2,
                                                      "Failed to find correct number of highlights " + numHighlights +
                                                      " found");
                                    };

            helper.Start();
        }
Exemplo n.º 4
0
        public void TestGetBestFragmentsPhrase()
        {
            var helper = new TestHighlightRunner();
            helper.TestAction = () =>
                                    {
                                        numHighlights = 0;
                                        DoSearching("\"John Kennedy\"");
                                        helper.DoStandardHighlights(analyzer, searcher, hits, query, this);
                                        // Currently highlights "John" and "Kennedy" separately
                                        Assert.IsTrue(numHighlights == 2,
                                                      "Failed to find correct number of highlights " + numHighlights +
                                                      " found");
                                    };

            helper.Start();
        }
Exemplo n.º 5
0
        public void TestGetRangeFragments()
        {
            var helper = new TestHighlightRunner();

            helper.TestAction = () =>
                                    {
                                        numHighlights = 0;
                                        String queryString = FIELD_NAME + ":[kannedy TO kznnedy]";

                                        // Need to explicitly set the QueryParser property to use TermRangeQuery
                                        // rather
                                        // than RangeFilters
                                        QueryParser parser = new QueryParser(TEST_VERSION, FIELD_NAME, analyzer);
                                        parser.MultiTermRewriteMethod = MultiTermQuery.SCORING_BOOLEAN_QUERY_REWRITE;
                                        query = parser.Parse(queryString);
                                        DoSearching(query);

                                        helper.DoStandardHighlights(analyzer, searcher, hits, query, this);
                                        Assert.IsTrue(numHighlights == 5,
                                                      "Failed to find correct number of highlights " + numHighlights +
                                                      " found");
                                    };

            helper.Start();
        }
Exemplo n.º 6
0
        public void TestNotSpanSimpleQuery()
        {
            DoSearching(new SpanNotQuery(new SpanNearQuery(new SpanQuery[]
                                                               {
                                                                   new SpanTermQuery(new Term(FIELD_NAME, "shot")),
                                                                   new SpanTermQuery(new Term(FIELD_NAME, "kennedy"))
                                                               }, 3, false), new SpanTermQuery(
                                                                                 new Term(FIELD_NAME, "john"))));
            var helper = new TestHighlightRunner(TestHighlightRunner.QUERY);
            helper.TestAction = () => helper.DoStandardHighlights(analyzer, searcher, hits, query, this);

            helper.Run();
            Assert.IsTrue(numHighlights == 4, "Failed to find correct number of highlights " + numHighlights + " found");
        }
Exemplo n.º 7
0
        public void TestSpanHighlighting()
        {
            Query query1 = new SpanNearQuery(new SpanQuery[]
                                                 {
                                                     new SpanTermQuery(new Term(FIELD_NAME, "wordx")),
                                                     new SpanTermQuery(new Term(FIELD_NAME, "wordy"))
                                                 }, 1, false);
            Query query2 = new SpanNearQuery(new SpanQuery[]
                                                 {
                                                     new SpanTermQuery(new Term(FIELD_NAME, "wordy")),
                                                     new SpanTermQuery(new Term(FIELD_NAME, "wordc"))
                                                 }, 1, false);
            BooleanQuery bquery = new BooleanQuery();
            bquery.Add(query1, Occur.SHOULD);
            bquery.Add(query2, Occur.SHOULD);
            DoSearching(bquery);
            var helper = new TestHighlightRunner(TestHighlightRunner.QUERY);
            helper.TestAction = () => helper.DoStandardHighlights(analyzer, searcher, hits, query, this);

            helper.Run();
            Assert.IsTrue(numHighlights == 7, "Failed to find correct number of highlights " + numHighlights + " found");
        }