public virtual void TestNullDocIdSet()
{
// Tests that if a Filter produces a null DocIdSet, which is given to
// IndexSearcher, everything works fine. this came up in LUCENE-1754.
Directory dir = NewDirectory();
RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
Document doc = new Document();
doc.Add(NewStringField("c", "val", Field.Store.NO));
writer.AddDocument(doc);
IndexReader reader = writer.Reader;
writer.Dispose();
// First verify the document is searchable.
IndexSearcher searcher = NewSearcher(reader);
Assert.AreEqual(1, searcher.Search(new MatchAllDocsQuery(), 10).TotalHits);
// Now search w/ a Filter which returns a null DocIdSet
Filter f = new FilterAnonymousInnerClassHelper(this);
Assert.AreEqual(0, searcher.Search(new MatchAllDocsQuery(), f, 10).TotalHits);
reader.Dispose();
dir.Dispose();
}