public override void SetUp()
{
base.SetUp();
Directory = NewDirectory();
RandomIndexWriter writer = new RandomIndexWriter(Random(), Directory, Similarity, TimeZone);
Document doc = new Document();
Field titleField = NewTextField("title", "some title", Field.Store.NO);
Field field = NewTextField(FN, "", Field.Store.NO);
Field footerField = NewTextField("footer", "a footer", Field.Store.NO);
doc.Add(titleField);
doc.Add(field);
doc.Add(footerField);
field.StringValue = "\uD866\uDF05abcdef";
writer.AddDocument(doc);
field.StringValue = "\uD866\uDF06ghijkl";
writer.AddDocument(doc);
// this sorts before the previous two in UTF-8/UTF-32, but after in UTF-16!!!
field.StringValue = "\uFB94mnopqr";
writer.AddDocument(doc);
field.StringValue = "\uFB95stuvwx"; // this one too.
writer.AddDocument(doc);
field.StringValue = "a\uFFFCbc";
writer.AddDocument(doc);
field.StringValue = "a\uFFFDbc";
writer.AddDocument(doc);
field.StringValue = "a\uFFFEbc";
writer.AddDocument(doc);
field.StringValue = "a\uFB94bc";
writer.AddDocument(doc);
field.StringValue = "bacadaba";
writer.AddDocument(doc);
field.StringValue = "\uFFFD";
writer.AddDocument(doc);
field.StringValue = "\uFFFD\uD866\uDF05";
writer.AddDocument(doc);
field.StringValue = "\uFFFD\uFFFD";
writer.AddDocument(doc);
Reader = writer.Reader;
Searcher = NewSearcher(Reader);
writer.Dispose();
}