public virtual void TestUpdateTwoNonexistingTerms()
{
Directory dir = NewDirectory();
IndexWriterConfig conf = NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random()));
IndexWriter writer = new IndexWriter(dir, conf);
Document doc = new Document();
doc.Add(new StringField("id", "doc", Store.NO));
doc.Add(new BinaryDocValuesField("f1", ToBytes(1L)));
writer.AddDocument(doc);
// update w/ multiple nonexisting terms in same field
writer.UpdateBinaryDocValue(new Term("c", "foo"), "f1", ToBytes(2L));
writer.UpdateBinaryDocValue(new Term("c", "bar"), "f1", ToBytes(2L));
writer.Dispose();
DirectoryReader reader = DirectoryReader.Open(dir);
Assert.AreEqual(1, reader.Leaves.Count);
Assert.AreEqual(1L, GetValue(((AtomicReader)reader.Leaves[0].Reader).GetBinaryDocValues("f1"), 0, new BytesRef()));
reader.Dispose();
dir.Dispose();
}
}