public virtual void TestScore()
{
Directory dir = NewDirectory();
RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
Document doc = new Document();
doc.Add(NewStringField("value", "bar", Field.Store.NO));
writer.AddDocument(doc);
doc = new Document();
doc.Add(NewStringField("value", "foo", Field.Store.NO));
writer.AddDocument(doc);
IndexReader ir = writer.Reader;
writer.Dispose();
IndexSearcher searcher = NewSearcher(ir);
Sort sort = new Sort(SortField.FIELD_SCORE);
BooleanQuery bq = new BooleanQuery();
bq.Add(new TermQuery(new Term("value", "foo")), Occur.SHOULD);
bq.Add(new MatchAllDocsQuery(), Occur.SHOULD);
TopDocs td = searcher.Search(bq, 10, sort);
Assert.AreEqual(2, td.TotalHits);
Assert.AreEqual(1, td.ScoreDocs[0].Doc);
Assert.AreEqual(0, td.ScoreDocs[1].Doc);
ir.Dispose();
dir.Dispose();
}
}