public void Load_RowStateChangesDefault()
{
localSetup();
_dt.Rows.Add(new object[] { 4, "mono 4" });
_dt.Rows.Add(new object[] { 5, "mono 5" });
_dt.AcceptChanges();
DataTableReader dtr = _dt.CreateDataReader();
DataTable dtLoad = setupRowState();
DataRowAction[] dra = new DataRowAction[] {
DataRowAction.ChangeCurrentAndOriginal,
DataRowAction.ChangeOriginal,
DataRowAction.ChangeOriginal,
DataRowAction.ChangeOriginal,
DataRowAction.ChangeCurrentAndOriginal};
rowActionInit(dra);
dtLoad.Load(dtr);
rowActionEnd();
// asserting Unchanged Row0
Assert.Equal("mono 1", dtLoad.Rows[0][1, DataRowVersion.Current]);
Assert.Equal("mono 1", dtLoad.Rows[0][1, DataRowVersion.Original]);
Assert.Equal(DataRowState.Unchanged, dtLoad.Rows[0].RowState);
// asserting Modified Row1
Assert.Equal("Modify 2", dtLoad.Rows[1][1, DataRowVersion.Current]);
Assert.Equal("mono 2", dtLoad.Rows[1][1, DataRowVersion.Original]);
Assert.Equal(DataRowState.Modified, dtLoad.Rows[1].RowState);
// asserting Deleted Row2
Assert.Equal("mono 3", dtLoad.Rows[2][1, DataRowVersion.Original]);
Assert.Equal(DataRowState.Deleted, dtLoad.Rows[2].RowState);
// asserting Added Row3
Assert.Equal("Add 4", dtLoad.Rows[3][1, DataRowVersion.Current]);
Assert.Equal("mono 4", dtLoad.Rows[3][1, DataRowVersion.Original]);
Assert.Equal(DataRowState.Modified, dtLoad.Rows[3].RowState);
// asserting Unpresent Row4
Assert.Equal("mono 5", dtLoad.Rows[4][1, DataRowVersion.Current]);
Assert.Equal("mono 5", dtLoad.Rows[4][1, DataRowVersion.Original]);
Assert.Equal(DataRowState.Unchanged, dtLoad.Rows[4].RowState);
}