示例#1
0
        public void ReadColumnsSetTest()
        {
            const char separator = CharsSplitReader.Comma;
            var        expecteds = new string[] { "A", "B", "C", "D", "", };
            var        text      = string.Join(separator.ToString(), expecteds);
            var        raw       = Encoding.UTF8.GetBytes(text);
            var        columns   = new int[expecteds.Length];

            for (var column = columns.Length - 1; column >= 0; --column)
            {
                columns[column] = column;
            }
            var actuals = new CharsColumn[expecteds.Length];
            var appends = new Action <char[], int, int> [expecteds.Length];

            for (var i = actuals.Length - 1; i >= 0; --i)
            {
                var actual = new CharsColumn();
                actuals[i] = actual;
                appends[i] = actual.AppendLength;
            }
            using (var readerStream = new MemoryStream(raw))
                using (var reader = new CharsSplitReader(readerStream))
                {
                    Assert.IsTrue(reader.ReadColumnsLength(separator, appends), "!ReadColumns");
                    for (var i = expecteds.Length - 1; i >= 0; --i)
                    {
                        Assert.AreEqual(expecteds[i], actuals[i].ToString(), i.ToString());
                    }
                }
        }
示例#2
0
        public void ReadColumnTest()
        {
            const char separator = CharsSplitReader.Comma;
            var        expecteds = new string[] { "A", "B", "C", "D", "", };
            var        text      = string.Join(separator.ToString(), expecteds);
            var        raw       = Encoding.UTF8.GetBytes(text);

            for (var i = expecteds.Length - 1; i >= 0; --i)
            {
                var actual = new CharsColumn();
                using (var readerStream = new MemoryStream(raw))
                    using (var reader = new CharsSplitReader(readerStream))
                    {
                        Assert.IsTrue(reader.ReadColumnsLength(separator, i, actual.AppendLength), "!ReadColumn");
                        Assert.AreEqual(expecteds[i], actual.ToString(), i.ToString());
                    }
            }
        }