public void GetValuesTest()
        {
            using (CsvReader csv = new CsvReader(new StringReader(CsvReaderSampleData.SampleData1), true))
            {
                IDataReader reader = csv;

                object[] objValues = new object[CsvReaderSampleData.SampleData1RecordCount];
                string[] values    = new string[CsvReaderSampleData.SampleData1RecordCount];

                while (reader.Read())
                {
                    Assert.AreEqual(CsvReaderSampleData.SampleData1RecordCount, reader.GetValues(objValues));

                    for (int i = 0; i < reader.FieldCount; i++)
                    {
                        if (string.IsNullOrEmpty(csv[i]))
                        {
                            Assert.AreEqual(DBNull.Value, objValues[i]);
                        }

                        values[i] = objValues[i].ToString();
                    }

                    CsvReaderSampleData.CheckSampleData1(csv.HasHeaders, csv.CurrentRecordIndex, values);
                }
            }
        }
        public void IndexerByFieldIndexTest()
        {
            using (CsvReader csv = new CsvReader(new StringReader(CsvReaderSampleData.SampleData1), true))
            {
                IDataReader reader = csv;

                string[] values = new string[CsvReaderSampleData.SampleData1RecordCount];

                while (reader.Read())
                {
                    for (int i = 0; i < reader.FieldCount; i++)
                    {
                        values[i] = (string)reader[i];
                    }

                    CsvReaderSampleData.CheckSampleData1(csv.HasHeaders, csv.CurrentRecordIndex, values);
                }
            }
        }
        public void IndexerByFieldNameTest()
        {
            using (CsvReader csv = new CsvReader(new StringReader(CsvReaderSampleData.SampleData1), true))
            {
                IDataReader reader = csv;

                string[] values = new string[CsvReaderSampleData.SampleData1RecordCount];

                while (reader.Read())
                {
                    values[0] = (string)reader[CsvReaderSampleData.SampleData1Header0];
                    values[1] = (string)reader[CsvReaderSampleData.SampleData1Header1];
                    values[2] = (string)reader[CsvReaderSampleData.SampleData1Header2];
                    values[3] = (string)reader[CsvReaderSampleData.SampleData1Header3];
                    values[4] = (string)reader[CsvReaderSampleData.SampleData1Header4];
                    values[5] = (string)reader[CsvReaderSampleData.SampleData1Header5];

                    CsvReaderSampleData.CheckSampleData1(csv.HasHeaders, csv.CurrentRecordIndex, values);
                }
            }
        }