Exemplo n.º 1
0
        public void Case01()
        {
            var str    = @"A,B,""""""""""""""www.google.com""""""""
""""""""我就是要,來搞你"""""""""""""",D
";
            var stream = StringStreamProvider.ToStream(str);

            var target = new CsvParserByChar(stream);

            var    actual   = target.Read();
            string expected = "A";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = "B";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = @"""""""www.google.com""""
""""我就是要,來搞你""""""";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = "D";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = "\r\n";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 2
0
        public void FirstPropertyEncloseDoubleQuoteInDoubleQuotes()
        {
            var str    = @"""" + @"""" + @"""" + @"""" + ",BB";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = @"""";

            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 3
0
        public void FirstProperty()
        {
            var str    = "AA,BB";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = "AA";

            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 4
0
        public void OnlyNewLineTwoLines()
        {
            var str    = @"
";
            var stream = StringStreamProvider.ToStream(str);

            var target = new CsvParserByChar(stream);

            var    actual   = target.Read();
            string expected = null;

            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 5
0
        public void ThreePropertyWithNewLine()
        {
            var str    = @"AA,BB,C
C";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            target.Read();
            target.Read();
            var actual   = target.Read();
            var expected = @"C";

            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 6
0
        public void EncloseOneCharInDoubleQuotes()
        {
            var str    = @"""A""";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = "A";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 7
0
        public void TwoChars()
        {
            var str    = "AB";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = "AB";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 8
0
        public void MultipleCharsWithNewLine()
        {
            var str    = @"""A
B""";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = @"A
B";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 9
0
        public void FirstPropertyEncloseDoubleQuoteAndSecondPropertyEmpty()
        {
            var str    = @"""A"",";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = "A";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = string.Empty;
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 10
0
        public void TwoPropertiesEmpty()
        {
            var str    = ",";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = string.Empty;

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = string.Empty;
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 11
0
        public void FirstPropertyShouldEmptyAndSecondPropertyNotEmpty()
        {
            var str    = ",A";
            var stream = StringStreamProvider.ToStream(str);
            var target = new CsvParserByChar(stream);

            var actual   = target.Read();
            var expected = string.Empty;

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = "A";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 12
0
        public void OneValueOneNewLine()
        {
            var str    = @"A
";
            var stream = StringStreamProvider.ToStream(str);

            var target = new CsvParserByChar(stream);

            var    actual   = target.Read();
            string expected = "A";

            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = "\r\n";
            Assert.AreEqual(expected, actual);

            actual   = target.Read();
            expected = null;
            Assert.AreEqual(expected, actual);
        }