Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
using System;
using System.Data;
using System.Collections;
using NUnit.Framework;
namespace TestDataGridBug
{
[TestFixture()]
public class TestDataGridBug
{
[Test()]
public void TestBugWithEditingRow()
{
var dataTable = new DataTable();
dataTable.Columns.Add("Id", typeof (int));
dataTable.Columns.Add("Name", typeof (string));
var row = dataTable.NewRow();
row["Id"] = 1;
row["Name"] = "John";
dataTable.Rows.Add(row);
row = dataTable.NewRow();
row["Id"] = 2;
row["Name"] = "Jack";
dataTable.Rows.Add(row);
var view = dataTable.DefaultView;
row.BeginEdit();
Assert.AreEqual(0, ((IList)view).IndexOf(view[0]));
Assert.AreEqual(1, ((IList)view).IndexOf(view[1]));
}
[Test()]
public void TestBugWithoutEditingRow()
{
var dataTable = new DataTable();
dataTable.Columns.Add("Id", typeof (int));
dataTable.Columns.Add("Name", typeof (string));
var row = dataTable.NewRow();
row["Id"] = 1;
row["Name"] = "John";
dataTable.Rows.Add(row);
row = dataTable.NewRow();
row["Id"] = 2;
row["Name"] = "Jack";
dataTable.Rows.Add(row);
var view = dataTable.DefaultView;
//row.BeginEdit();
Assert.AreEqual(0, ((IList)view).IndexOf(view[0]));
Assert.AreEqual(1, ((IList)view).IndexOf(view[1]));
}
}
}
Дело о потерянных строках в DataView