public virtual void TestUpdateNumericDVFieldWithSameNameAsPostingField()
{
// this used to fail because FieldInfos.Builder neglected to update
// globalFieldMaps.docValueTypes map
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("f", "mock-value", Store.NO));
doc.Add(new NumericDocValuesField("f", 5));
writer.AddDocument(doc);
writer.Commit();
writer.UpdateNumericDocValue(new Term("f", "mock-value"), "f", 17L);
writer.Dispose();
DirectoryReader r = DirectoryReader.Open(dir);
NumericDocValues ndv = ((AtomicReader)r.Leaves[0].Reader).GetNumericDocValues("f");
Assert.AreEqual(17, ndv.Get(0));
r.Dispose();
dir.Dispose();
}