public void TestClone() { var array = new BsonArray(4) { 1, 2, new BsonArray(3) { 3, 4 } }; var clone = (BsonArray)array.Clone(); Assert.AreEqual(4, clone.Capacity); Assert.AreEqual(3, clone.Count); Assert.AreEqual(1, clone[0].AsInt32); Assert.AreEqual(2, clone[1].AsInt32); Assert.AreSame(array[2], clone[2]); // not deep cloned }