Exemplo n.º 1
0
        private string[] WriteUploadEntitiesAsPayload(IEnumerable <BulkEntity> entities)
        {
            ICsvTextFormatter formatter       = new CsvTextFormatter(DownloadFileType.Csv);
            List <string>     entitiesPayload = new List <string>();

            WriteHeader(entitiesPayload, formatter);
            WriteFormat(entitiesPayload, formatter);
            foreach (var entity in entities)
            {
                using (var stream = new MemoryStream())
                {
                    stream.Position = 0;
                    using (var writer = new BulkObjectWriter(stream, DownloadFileType.Csv))
                    {
                        entity.WriteToStream(writer, false);
                        stream.Seek(0, SeekOrigin.Begin);
                        using (var reader = new StreamReader(stream))
                        {
                            entitiesPayload.Add(reader.ReadToEnd());
                        }
                    }
                }
            }
            return(entitiesPayload.ToArray());
        }
Exemplo n.º 2
0
        public void Format_EmptyText_ReturnsEmptyXml()
        {
            var formatter = new CsvTextFormatter();
            var text      = formatter.Format(new List <Sentence>());

            Assert.AreEqual(string.Empty, text);
        }
Exemplo n.º 3
0
        public void Format_FewValidSentences_ReturnsListOfSentences()
        {
            var formatter = new CsvTextFormatter();
            var sentences = new List <Sentence>
            {
                new Sentence(new List <string>
                {
                    "a",
                    "had",
                    "lamb",
                    "little",
                    "Mary"
                }),
                new Sentence(new List <string>
                {
                    "Aesop",
                    "and",
                    "called",
                    "came",
                    "for",
                    "Peter",
                    "the",
                    "wolf"
                }),
                new Sentence(new List <string> {
                    "Cinderella", "likes", "shoes"
                })
            };
            var text = formatter.Format(sentences);

            var expectedXml = new StringBuilder();

            expectedXml.AppendLine("Word 1, Word 2, Word 3, Word 4, Word 5, Word 6, Word 7, Word 8");
            expectedXml.AppendLine("Sentence 1, a, had, lamb, little, Mary");
            expectedXml.AppendLine("Sentence 2, Aesop, and, called, came, for, Peter, the, wolf");
            expectedXml.Append("Sentence 3, Cinderella, likes, shoes");

            Assert.AreEqual(expectedXml.ToString(), text);
        }