Beispiel #1
0
        public void DataErrors()
        {
            var csv = new CsvTextOutput(new MemoryStream());

            Assert.Throws <InvalidOperationException>(delegate {
                csv.WriteData();  // no data before header
            });
            csv.WriteHeader("A");
            Assert.Throws <ArgumentNullException>(delegate {
                csv.WriteData(null);  // no null data
            });
            Assert.Throws <ArgumentOutOfRangeException>(delegate {
                csv.WriteData("1", "2");  // no data longer than header
            });
        }
Beispiel #2
0
        public void Escaping()
        {
            var templateLines = GetLines("Escaping.csv");
            var stream        = new MemoryStream();

            using var csv = new CsvTextOutput(stream);
            csv.WriteHeader("Column Space", "Column,Comma", "Column\"Quotes", "Column'Apostrophe");
            csv.WriteData("3.14", "6.28", "27-Jan", "18-May");
            csv.WriteData("A B", "X,Y", "C\"D", "E'F");
            var lines = GetLines(stream);

            Assert.Equal(templateLines.Length, lines.Length);
            for (var i = 0; i < lines.Length; i++)
            {
                Assert.Equal(templateLines[i], lines[i]);
            }
        }
Beispiel #3
0
        public void Basic()
        {
            var templateLines = GetLines("Basic.csv");
            var stream        = new MemoryStream();

            using var csv = new CsvTextOutput(stream);
            csv.WriteHeader("A", "B", "C");
            csv.WriteData("11", "12", "13");
            csv.WriteData("21", "22", "23");
            csv.WriteData("3X", "3Y", "3Z");
            var lines = GetLines(stream);

            Assert.Equal(templateLines.Length, lines.Length);
            for (var i = 0; i < lines.Length; i++)
            {
                Assert.Equal(templateLines[i], lines[i]);
            }
        }
Beispiel #4
0
        public void Incomplete()
        {
            var templateLines = GetLines("Incomplete.csv");
            var stream        = new MemoryStream();

            using var csv = new CsvTextOutput(stream);
            csv.WriteHeader("A", "B", "C");
            csv.WriteData("1", "2", "3");
            csv.WriteData("4", "5");
            csv.WriteData("6");
            csv.WriteData();
            var lines = GetLines(stream);

            Assert.Equal(templateLines.Length, lines.Length);
            for (var i = 0; i < lines.Length; i++)
            {
                Assert.Equal(templateLines[i], lines[i]);
            }
        }