public virtual void TestCloneWithSetNorm()
{
Directory dir1 = new MockRAMDirectory();
TestIndexReaderReopen.CreateIndex(dir1, false);
IndexReader orig = IndexReader.Open(dir1, false);
orig.SetNorm(1, "field1", 17.0f);
byte encoded = Similarity.EncodeNorm(17.0f);
Assert.AreEqual(encoded, orig.Norms("field1")[1]);
// the cloned segmentreader should have 2 references, 1 to itself, and 1 to
// the original segmentreader
IndexReader clonedReader = (IndexReader)orig.Clone();
orig.Close();
clonedReader.Close();
IndexReader r = IndexReader.Open(dir1, false);
Assert.AreEqual(encoded, r.Norms("field1")[1]);
r.Close();
dir1.Close();
}