public void Test3()
        {
            var spreadsheet = new Spreadsheet(
                new[]
            {
                new[] { "aa", "bb", },
                new[] { "cc", "Z", },
            });

            var headerElector = new DelimitedHeaderElector();
            var header        = headerElector.Elect(spreadsheet);

            header.Count.Should().Be(2);

            var columns = header.DelimitedColumns.ToArray();

            columns[0].Name.Should().Be("aa");
            columns[1].Name.Should().Be("bb");
            columns[0].Type.Should().Be(typeof(string));
            columns[1].Type.Should().Be(typeof(char));
        }
        public void Test()
        {
            var spreadsheet = new Spreadsheet(
                new[]
            {
                new[] { "Col0", "Col1", "Col2" },
                new[] { "a", "b", "c" },
            });

            var headerElector = new DelimitedHeaderElector();
            var header        = headerElector.Elect(spreadsheet);

            header.Count.Should().Be(3);

            var columns = header.DelimitedColumns.ToArray();

            columns[0].Name.Should().Be("Col0");
            columns[1].Name.Should().Be("Col1");
            columns[2].Name.Should().Be("Col2");
            columns[0].Type.Should().Be(typeof(char));
            columns[1].Type.Should().Be(typeof(char));
            columns[2].Type.Should().Be(typeof(char));
        }
 public CsvSerializerFactory()
 {
     this.delimiterElector       = new DelimiterElector(5);
     this.delimitedHeaderElector = new DelimitedHeaderElector();
 }