[InlineData(100000)] //should run in ~ 900ms public async Task MappingPerformanceFunctions(int rows) { var data = Helpers.CreateLargeTable(rows); var transformMapping = new TransformMapping(); var columnMappings = new List <TransformFunction>(); for (var i = 0; i < data.FieldCount; i++) { var newTransformFunction = new TransformFunction( new Func <object, object>((value) => value), new TableColumn[] { new TableColumn(data.GetName(i)) }, new TableColumn(data.GetName(i)), null); columnMappings.Add(newTransformFunction); } transformMapping.PassThroughColumns = false; transformMapping.Functions = columnMappings; transformMapping.SetInTransform(data); var count = 0; while (await transformMapping.ReadAsync()) { count++; } Assert.Equal(rows, count); output.WriteLine(transformMapping.PerformanceSummary()); }
[InlineData(100000)] //should run in ~ 250ms public async Task MappingPerformanceColumnPairs(int rows) { var data = Helpers.CreateLargeTable(rows); var transformMapping = new TransformMapping(); var columnMappings = new List <ColumnPair>(); for (var i = 0; i < data.FieldCount; i++) { columnMappings.Add(new ColumnPair(new TableColumn(data.GetName(i)))); } transformMapping.PassThroughColumns = false; transformMapping.MapFields = columnMappings; transformMapping.SetInTransform(data); var count = 0; while (await transformMapping.ReadAsync()) { count++; } Assert.Equal(rows, count); output.WriteLine(transformMapping.PerformanceSummary()); }
[InlineData(100000)] //should run in ~ 250ms public async Task MappingPerformancePassthrough(int rows) { var data = Helpers.CreateLargeTable(rows); var transformMapping = new TransformMapping { PassThroughColumns = true }; transformMapping.SetInTransform(data); var count = 0; while (await transformMapping.ReadAsync()) { count++; } Assert.Equal(rows, count); output.WriteLine(transformMapping.PerformanceSummary()); }