Ejemplo n.º 1
0
 internal override T getReader <T>()
 {
     if (valuesReader == null)
     {
         valuesReader = ValuesIoFactory.createValuesReader(this);
     }
     return((T)(object)valuesReader);
 }
        public void HeaderRowShouldBeCreatedByDefault()
        {
            var metadata      = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable    = new List <TestExportItem>();
            var configuration = new ExportConfiguration();

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);

            Assert.Equal(1, values.Count);
            Assert.True(values[0].IsHeaderRow);
        }
        public void HeaderRowShouldNotBeCreatedByConfiguration()
        {
            var metadata      = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable    = new List <TestExportItem>();
            var configuration = new ExportConfiguration {
                WriteHeaderRow = false
            };

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);

            Assert.Equal(0, values.Count);
        }
        public void AllRowsShouldBeExported()
        {
            var metadata   = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable = new List <TestExportItem> {
                new TestExportItem(), new TestExportItem()
            };
            var configuration = new ExportConfiguration();

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);

            Assert.Equal(3, values.Count);
            Assert.Equal(2, values.Count(v => !v.IsHeaderRow));
        }
        public void NullShouldBeNullByDefault()
        {
            var metadata   = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable = new List <TestExportItem> {
                new TestExportItem()
            };
            var configuration = new ExportConfiguration {
                WriteHeaderRow = false
            };

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);
            var row          = values.SingleOrDefault();

            Assert.NotNull(row);
            Assert.True(row.Values.Any(v => v.Value == null));
            Assert.False(row.Values.Any(v => v.Value != null && v.Value.ToString() == "NULL"));
        }
        public void SimpleDisplayMemberPathShouldBeUsed()
        {
            var metadata   = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable = new List <TestExportItem> {
                new TestExportItem {
                    Timestamp = new DateTime(1961, 2, 25)
                }
            };
            var configuration = new ExportConfiguration {
                WriteHeaderRow = false
            };

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);
            var row          = values.SingleOrDefault();

            Assert.NotNull(row);
            Assert.True(row.Values.Any(v => v.Value is int && (int)v.Value == 1961));
        }
        public void CorrectValuesShouldBeRead()
        {
            var metadata   = MetadataReader.ReadMetadata(typeof(TestExportItem));
            var enumerable = new List <TestExportItem> {
                new TestExportItem {
                    Name = "Jann", Id = 15
                }
            };
            var configuration = new ExportConfiguration {
                WriteHeaderRow = false
            };

            var valuesReader = new ValuesReader <TestExportItem>(metadata, configuration);
            var values       = valuesReader.ReadValues(enumerable);
            var row          = values.SingleOrDefault();

            Assert.NotNull(row);
            Assert.True(row.Values.Any(v => v.Value.ToString().Equals("Jann")));
            Assert.True(row.Values.Any(v => v.Value is int && (int)v.Value == 15));
        }