public void CsvTableReader_Parsing() { CsvTableReader reader; string table = @"Col1,Col2,Col3 10,true,25.20 no,10 ""Hello """"World""""!"",BAR"; reader = new CsvTableReader(new CsvReader(table)); Assert.Equal(3, reader.ColumnMap.Count); Assert.Equal(0, reader.ColumnMap["Col1"]); Assert.Equal(1, reader.ColumnMap["Col2"]); Assert.Equal(2, reader.ColumnMap["Col3"]); Assert.Equal(3, reader.Columns.Count); Assert.Equal("Col1", reader.Columns[0]); Assert.Equal("Col2", reader.Columns[1]); Assert.Equal("Col3", reader.Columns[2]); Assert.NotNull(reader.ReadRow()); Assert.Equal("10", reader.GetColumn("Col1")); Assert.Equal("true", reader.GetColumn("Col2")); Assert.Equal("25.20", reader.GetColumn("Col3")); Assert.Equal("10", reader["Col1"]); Assert.Equal("true", reader["Col2"]); Assert.Equal("25.20", reader["Col3"]); Assert.Null(reader["not-there"]); Assert.Equal("10", reader[0]); Assert.Equal("true", reader[1]); Assert.Equal("25.20", reader[2]); Assert.Null(reader[100]); Assert.NotNull(reader.ReadRow()); Assert.Equal("no", reader["Col1"]); Assert.Equal("10", reader["Col2"]); Assert.NotNull(reader.ReadRow()); Assert.Equal(@"Hello ""World""!", reader["Col1"]); Assert.Equal("BAR", reader["Col2"]); Assert.Null(reader.ReadRow()); Assert.Null(reader.ReadRow()); }