public virtual void TestDistanceAsEditsSearching()
{
Directory index = NewDirectory();
RandomIndexWriter w = new RandomIndexWriter(Random(), index, Similarity, TimeZone);
AddDoc("foobar", w);
AddDoc("test", w);
AddDoc("working", w);
IndexReader reader = w.Reader;
IndexSearcher searcher = NewSearcher(reader);
w.Dispose();
FuzzyQuery q = new FuzzyQuery(new Term("field", "fouba"), 2);
ScoreDoc[] hits = searcher.Search(q, 10).ScoreDocs;
Assert.AreEqual(1, hits.Length);
Assert.AreEqual("foobar", searcher.Doc(hits[0].Doc).Get("field"));
q = new FuzzyQuery(new Term("field", "foubara"), 2);
hits = searcher.Search(q, 10).ScoreDocs;
Assert.AreEqual(1, hits.Length);
Assert.AreEqual("foobar", searcher.Doc(hits[0].Doc).Get("field"));
try
{
q = new FuzzyQuery(new Term("field", "t"), 3);
Assert.Fail();
}
catch (System.ArgumentException expected)
{
// expected
}
reader.Dispose();
index.Dispose();
}