Lucene.Net.Search.TestSloppyPhraseQuery.CheckPhraseQuery C# (CSharp) Метод

CheckPhraseQuery() приватный Метод

private CheckPhraseQuery ( Lucene.Net.Documents.Document doc, PhraseQuery query, int slop, int expectedNumResults ) : float
doc Lucene.Net.Documents.Document
query PhraseQuery
slop int
expectedNumResults int
Результат float
        private float CheckPhraseQuery(Document doc, PhraseQuery query, int slop, int expectedNumResults)
        {
            query.Slop = slop;

            Directory ramDir = NewDirectory();
            RandomIndexWriter writer = new RandomIndexWriter(Random(), ramDir, new MockAnalyzer(Random(), MockTokenizer.WHITESPACE, false), Similarity, TimeZone);
            writer.AddDocument(doc);

            IndexReader reader = writer.Reader;

            IndexSearcher searcher = NewSearcher(reader);
            MaxFreqCollector c = new MaxFreqCollector();
            searcher.Search(query, c);
            Assert.AreEqual(expectedNumResults, c.TotalHits, "slop: " + slop + "  query: " + query + "  doc: " + doc + "  Wrong number of hits");

            //QueryUtils.Check(query,searcher);
            writer.Dispose();
            reader.Dispose();
            ramDir.Dispose();

            // returns the max Scorer.Freq() found, because even though norms are omitted, many index stats are different
            // with these different tokens/distributions/lengths.. otherwise this test is very fragile.
            return c.Max;
        }