Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }