示例#1
0
        public void WriteDynamicIDynamicMetaObjectProviderHasDifferentPropertyOrderingWithDynamicSortTest()
        {
            var config = new CsvConfiguration(CultureInfo.InvariantCulture)
            {
                DynamicPropertySort = Comparer <string> .Create((x, y) => x.CompareTo(y)),
            };

            using (var writer = new StringWriter())
                using (var csv = new CsvWriter(writer, config))
                {
                    dynamic obj = new DynamicObjectMock();
                    obj.Name = "one";
                    obj.Id   = 1;

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    obj      = new ExpandoObject();
                    obj.Id   = 2;
                    obj.Name = "two";

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    var expected = "Id,Name\r\n";
                    expected += "1,one\r\n";
                    expected += "2,two\r\n";

                    Assert.Equal(expected, writer.ToString());
                }
        }
示例#2
0
        public void WriteDynamicIDynamicMetaObjectProviderHasDifferentPropertyOrderingTest()
        {
            using (var writer = new StringWriter())
                using (var csv = new CsvWriter(writer))
                {
                    csv.Configuration.Delimiter = ",";

                    dynamic obj = new DynamicObjectMock();
                    obj.Id   = 1;
                    obj.Name = "one";

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    obj      = new ExpandoObject();
                    obj.Name = "two";
                    obj.Id   = 2;

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    var expected = "Id,Name\r\n";
                    expected += "1,one\r\n";
                    expected += "2,two\r\n";

                    Assert.AreEqual(expected, writer.ToString());
                }
        }
示例#3
0
        public void WriteDynamicIDynamicMetaObjectProviderHasDifferentPropertyOrderingTest()
        {
            using (var writer = new StringWriter())
                using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
                {
                    dynamic obj = new DynamicObjectMock();
                    obj.Name = "one";
                    obj.Id   = 1;

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    obj      = new ExpandoObject();
                    obj.Name = "two";
                    obj.Id   = 2;

                    csv.WriteRecord(obj);
                    csv.NextRecord();

                    var expected = "Name,Id\r\n";
                    expected += "one,1\r\n";
                    expected += "two,2\r\n";

                    Assert.Equal(expected, writer.ToString());
                }
        }