public void GetResultsDataTable_TwoEmptyTables_Expect_no_rows_3_columns() { DataTableComparer comparer = new DataTableComparer(); comparer.AddTable(new DataTable("table1")); comparer.AddTable(new DataTable("table2")); DataTableComparerResult result = comparer.Compare(); DataTable dataTable = result.ResultsDataTable; IEnumerable <string> columnNames = dataTable.Columns.Cast <DataColumn>().Select(a => a.ColumnName); Assert.Contains("Exists_In_table1", columnNames); Assert.Contains("Exists_In_table2", columnNames); Assert.Contains("Exists_In_Status", columnNames); Assert.Empty(dataTable.Rows); Assert.Equal(3, dataTable.Columns.Count); }
public void GetResultsDataTable_TwoTablesOneHasExtraRow_Expect_3() { DataTableComparerConfig config = new DataTableComparerConfig(); config.InSyncPhrase = "true"; config.OutOfSyncPhrase = "false"; DataTableComparer comparer = new DataTableComparer(); DataTable dt1 = new DataTable("table1"); dt1.Columns.Add("Id"); dt1.Columns.Add("Name"); dt1.SetBestGuessPrimaryKey(); dt1.Rows.Add("1", "Apple"); dt1.Rows.Add("2", "Orange"); DataTable dt2 = new DataTable("table2"); dt2.Columns.Add("Id"); dt2.Columns.Add("Name"); dt2.SetBestGuessPrimaryKey(); dt2.Rows.Add("1", "Apple"); dt2.Rows.Add("2", "Orange"); dt2.Rows.Add("3", "Orange"); comparer.AddTable(dt1); comparer.AddTable(dt2); DataTableComparerResult result = comparer.Compare(); DataTable dataTable = result.ResultsDataTable; IEnumerable <string> columnNames = dataTable.Columns.Cast <DataColumn>().Select(a => a.ColumnName); Assert.False(result.AllTablesContainTheSamePrimaryKeysRows()); Assert.Contains("Id", columnNames); Assert.Contains("Exists_In_table1", columnNames); Assert.Contains("Exists_In_table2", columnNames); Assert.Contains("Exists_In_Status", columnNames); Assert.Contains("Name_Status", columnNames); Assert.Contains("Name_table1", columnNames); Assert.Contains("Name_table2", columnNames); Assert.Equal(3, dataTable.Rows.Count); }