Beispiel #1
0
        public void testEmptyValue()
        {
            String csv = "\"id\",\"name\"\n,\"John\"\n2,\n";
            IEnumerator <DocumentValue> iter = CSVReader.iterator(csv, null, ',', '"');

            Assert.IsTrue(iter.MoveNext());
            DocumentValue doc = iter.Current;

            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), NullValue.Instance);
            Assert.AreEqual(doc.GetMember("name", false), "John");
            Assert.IsTrue(iter.MoveNext());
            doc = iter.Current;
            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), "2");
            Assert.AreEqual(doc.GetMember("name", false), NullValue.Instance);
        }
Beispiel #2
0
        public void testQuotedInnerNewLine()
        {
            String csv = "id,name\n1,\"Jo\nhn\"\n2,Sylvie\n";
            IEnumerator <DocumentValue> iter = CSVReader.iterator(csv, null, ',', '"');

            Assert.IsTrue(iter.MoveNext());
            DocumentValue doc = iter.Current;

            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), "1");
            Assert.AreEqual(doc.GetMember("name", false), "Jo\nhn");
            Assert.IsTrue(iter.MoveNext());
            doc = iter.Current;
            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), "2");
            Assert.AreEqual(doc.GetMember("name", false), "Sylvie");
        }
Beispiel #3
0
        public void testEscapeNoQuotes()
        {
            String csv = "id,name\n1,John\n2,Riou\\, Sylvie\n";
            IEnumerator <DocumentValue> iter = CSVReader.iterator(csv, null, ',', '"');

            Assert.IsTrue(iter.MoveNext());
            DocumentValue doc = iter.Current;

            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), "1");
            Assert.AreEqual(doc.GetMember("name", false), "John");
            Assert.IsTrue(iter.MoveNext());
            doc = iter.Current;
            Assert.IsNotNull(doc);
            Assert.AreEqual(doc.GetMember("id", false), "2");
            Assert.AreEqual(doc.GetMember("name", false), "Riou, Sylvie");
        }
Beispiel #4
0
        private void ConvertListElement(DocumentValue parent, String tagName, XmlElement element)
        {
            ListValue list    = null;
            var       current = parent.GetMember(tagName, false);

            if (current is ListValue)
            {
                list = (ListValue)current;
            }
            else
            {
                list = new ListValue(AnyType.Instance);
                list.Add(current);
                parent.SetMember(tagName, list);
            }
            list.Add(ConvertElementValue(element));
        }