Exemplo n.º 1
0
        public void LoadFileShouldIncludeQuotes()
        {
            var file = new Framework.CsvFile.CsvFile("SimpleQuotes.csv");

            file.Load();

            Assert.True(file.DataRows.All(row => row.Fields.Last().Contains('"')));
        }
Exemplo n.º 2
0
        public void LoadFileShouldRemoveQuotes()
        {
            var file = new Framework.CsvFile.CsvFile("SimpleSemicolon.csv")
            {
                RemoveQuotes = true
            };

            file.Load();

            Assert.DoesNotContain(file.DataRows, row => row.Fields.Last().Contains('"'));
        }
Exemplo n.º 3
0
        public void LoadFileShouldDetectSeparatorCharacter()
        {
            var file = new Framework.CsvFile.CsvFile("SimpleSemicolon.csv");

            file.Load();

            Assert.Equal(4, file.Columns.Count);
            Assert.Equal(10, file.DataRows.Count);
            Assert.Empty(file.InvalidRows);
            Assert.True(string.IsNullOrEmpty(file.LoadError));
            Assert.Equal(';', file.Separator);
        }
Exemplo n.º 4
0
        public void SaveFileNormallyShouldNotContainBom()
        {
            var file = new Framework.CsvFile.CsvFile("SimpleTab.csv");

            file.Load();

            file.SaveAs("Temp.csv");

            var text = File.ReadAllBytes("Temp.csv").Take(4).ToArray();

            Assert.Equal(new[] { (byte)'N', (byte)'u', (byte)'m', (byte)'m' }, text);
        }
Exemplo n.º 5
0
        public void LoadFileWithBomShouldReadAllLinesAndColumns()
        {
            var file = new Framework.CsvFile.CsvFile("Utf8WithBom.csv");

            file.Load();

            Assert.Equal(4, file.Columns.Count);
            Assert.Equal(10, file.DataRows.Count);
            Assert.Empty(file.InvalidRows);
            Assert.True(string.IsNullOrEmpty(file.LoadError));
            Assert.Equal('\t', file.Separator);
            Assert.Equal("utf-8", file.FileEncoding.WebName);
        }
Exemplo n.º 6
0
        public void SaveFileForcingBomShouldContainBom()
        {
            var file = new Framework.CsvFile.CsvFile("SimpleTab.csv");

            file.Load();

            file.WriteBom = true;
            file.SaveAs("Temp.csv");

            var text = File.ReadAllBytes("Temp.csv").Take(4).ToArray();

            Assert.Equal(new byte[] { 0xEF, 0xBB, 0xBF, (byte)'N' }, text);
        }
        public void LoadFileShouldDetectSeparatorCharacter()
        {
            var file = new Framework.CsvFile.CsvFile("QuotedWithLineBreaks.csv")
            {
                RemoveQuotes = true
            };

            file.Load();

            Assert.Equal(4, file.Columns.Count);
            Assert.Equal(10, file.DataRows.Count);
            Assert.Empty(file.InvalidRows);
            Assert.True(string.IsNullOrEmpty(file.LoadError));
            Assert.Equal(';', file.Separator);
            Assert.DoesNotContain(file.DataRows, row => row.Fields.Last().Contains('"'));
        }
Exemplo n.º 8
0
        public void LoadFileWindowsEncodedWithoutBomShouldReadAllLinesAndColumns()
        {
            var file = new Framework.CsvFile.CsvFile("WindowsWithoutBom.csv")
            {
                FileEncoding = Encoding.GetEncoding(1250)
            };

            file.Load();

            Assert.Equal(4, file.Columns.Count);
            Assert.Equal(10, file.DataRows.Count);
            Assert.Empty(file.InvalidRows);
            Assert.True(string.IsNullOrEmpty(file.LoadError));
            Assert.Equal('\t', file.Separator);
            Assert.Contains("Eingänge", file.DataRows.Last().RawData);
            Assert.Equal("windows-1250", file.FileEncoding.WebName);
        }