Example #1
0
        public void TestWriteTsv()
        {
            string output;
            string expectedOutput = "foo\tbar\tbaz\n" +
                                    "wibble\twobble\tspong";
            IList <IList <string> > input = new string[][] { new string[] { "foo", "bar", "baz" },
                                                             new string[] { "wibble", "wobble", "spong" } };
            ITabularDataParser parser = new TabularDataParser(TabularDataFormat.CreateTsv());

            output = parser.Write(input);
            Assert.AreEqual(expectedOutput, output, "Correct string rendering");
        }
Example #2
0
        public void TestReadTsv()
        {
            string input = "foo\tbar\tbaz\n" +
                           "wibble\twobble\tspong";
            ITabularDataParser parser = new TabularDataParser(TabularDataFormat.CreateTsv());

            var output = parser.Read(input);

            Assert.AreEqual(2, output.GetRowCount(), "Correct row count");
            Assert.AreEqual("wibble", output[1][0], "Correct data in second row, first column");
            Assert.AreEqual("wobble", output[1][1], "Correct data in second row, second column");
        }
Example #3
0
        public void TestReadTsvWithQuotedUnicode()
        {
            string input = "foo\tbar\tbaz\n" +
                           "wibble\t    wobble   \tspong\n" +
                           "\"  foo\"\t\"\"\"bar\"\"\"\t\"A big, \"\"big, ¥en test!\"";
            ITabularDataParser parser = new TabularDataParser(TabularDataFormat.CreateTsv());

            var output = parser.Read(input);

            Assert.AreEqual(3, output.GetRowCount(), "Correct row count");
            Assert.AreEqual("wobble", output[1][1], "Correct data in second row, second column");
            Assert.AreEqual("\"  foo\"", output[2][0], "Correct data in third row, first column");
            Assert.AreEqual("\"\"\"bar\"\"\"", output[2][1], "Correct data in third row, second column");
            Assert.AreEqual("\"A big, \"\"big, ¥en test!\"", output[2][2], "Correct data in third row, third column");
        }