public virtual void TestOneOptionalEqualToMin()
{
/* two required, one optional */
BooleanQuery q = new BooleanQuery();
q.Add(new TermQuery(new Term("all", "all")), BooleanClause.Occur.MUST); //true, false);
q.Add(new TermQuery(new Term("data", "3")), BooleanClause.Occur.SHOULD); //false, false);
q.Add(new TermQuery(new Term("data", "2")), BooleanClause.Occur.MUST); //true, false);
q.MinimumNumberShouldMatch = 1; // 1 of 1 optional
VerifyNrHits(q, 1);
}