public void ShouldSerializeExpressionColumn() { // Arrange var columnName = "foo"; var dataTable = new DataTable(); dataTable.Columns.Add(columnName, typeof(int)); dataTable.Rows.Add(1); var dataReader = dataTable.CreateDataReader(); dataReader.GetSchemaTable().Rows[0]["Expression"] = true; var options = new ProtoDataWriterOptions() { IncludeComputedColumns = true }; // Act var reader = new ProtoReader(this.Serialize(dataReader, options), null, null); // Assert var readerContext = new ProtoReaderContext(reader); readerContext.ReadUntilColumnName(); Assert.Equal(columnName, reader.ReadString()); }
public void ShouldSerializeSuccessiveResultColumns() { // Arrange var dataSet = new DataSet(); dataSet.Tables.Add(new DataTable()); dataSet.Tables.Add(new DataTable()); dataSet.Tables[0].Columns.Add("foo", typeof(int)); dataSet.Tables[0].Rows.Add(1); var columnName = "bar"; dataSet.Tables[1].Columns.Add(columnName, typeof(int)); dataSet.Tables[1].Rows.Add(1); var dataReader = dataSet.CreateDataReader(); var stream = new ProtoDataStream(dataReader); // Act var reader = ProtoReader.Create(this.CopyStream(stream), null, null); // Assert var readerContext = new ProtoReaderContext(reader); readerContext.ReadUntilResultEnd(); readerContext.ReadUntilColumnName(); Assert.Equal(columnName, reader.ReadString()); }
public void ShouldSerializeColumnName() { // Arrange var columnName = "foo"; var dataTable = new DataTable(); dataTable.Columns.Add(columnName, typeof(int)); dataTable.Rows.Add(1); var dataReader = dataTable.CreateDataReader(); // Act var reader = new ProtoReader(this.Serialize(dataReader), null, null); // Assert var readerContext = new ProtoReaderContext(reader); readerContext.ReadUntilColumnName(); Assert.Equal(columnName, reader.ReadString()); }