public static void AssertColumns(DataColumnCollection expectedColumns, DataColumnCollection actualColumns, bool useClrTypes = false) { for (int i = 0; i < expectedColumns.Count; i++) { DataColumn expectedColumn = expectedColumns[i]; DataColumn actualColumn = actualColumns[i]; Assert.Equal(expectedColumn.ColumnName, actualColumn.ColumnName); if (!useClrTypes && JsonTypeConverter.IsNumeric(expectedColumn.DataType)) { Assert.Equal(typeof(double), actualColumn.DataType); } else { Assert.Equal(expectedColumn.DataType, actualColumn.DataType); } } }
public static void AssertRows(DataTable expected, DataTable actual, bool useClrTypes = false) { for (int i = 0; i < expected.Rows.Count; i++) { DataRow expectedRow = expected.Rows[i]; DataRow actualRow = actual.Rows[i]; foreach (DataColumn expectedColumn in expected.Columns) { var expectedColumnValue = expectedRow[expectedColumn.ColumnName]; var actualColumnValue = actualRow[expectedColumn.ColumnName]; if (!useClrTypes && JsonTypeConverter.IsNumeric(expectedColumn.DataType) && expectedColumnValue != DBNull.Value && actualColumnValue != DBNull.Value) { Assert.Equal(Convert.ToDecimal(expectedColumnValue), Convert.ToDecimal(actualColumnValue)); } else { Assert.Equal(expectedColumnValue, actualColumnValue); } } } }