public void TestJaggedField() { using (CsvReader r = new CsvReader(new StringReader(CSV_DOC1))) { Assert.AreEqual(0, r.Depth); Assert.IsFalse(r.IsClosed); Assert.AreEqual(3, r.FieldCount); Assert.IsTrue(r.Read()); Assert.AreEqual(3, r.FieldCount); Assert.IsTrue(r.Read()); //second row has an extra field Assert.AreEqual(4, r.FieldCount); Assert.AreEqual("3", r.GetName(3)); Assert.AreEqual(3, r.GetOrdinal("3")); Assert.AreEqual("extra", r.GetValue(3)); Assert.IsTrue(r.Read()); Assert.IsFalse(r.IsDBNull(0)); Assert.AreEqual("3a", r.GetString("f1")); Assert.IsTrue(r.IsDBNull(1)); Assert.IsTrue(r.IsDBNull(2)); Assert.IsTrue(r.Read()); Assert.IsTrue(r.Read()); Assert.IsFalse(r.Read()); } }