System.Data.Tests.DataColumnCollectionTest2.TestRemove_ByDataColumn C# (CSharp) Метод

TestRemove_ByDataColumn() приватный Метод

private TestRemove_ByDataColumn ( ) : void
Результат void
        public void TestRemove_ByDataColumn()
        {
            //prepare a DataSet with DataTable to be checked
            DataTable dtSource = new DataTable();
            dtSource.Columns.Add("Col_0", typeof(int));
            dtSource.Columns.Add("Col_1", typeof(int));
            dtSource.Columns.Add("Col_2", typeof(int));
            dtSource.Rows.Add(new object[] { 0, 1, 2 });

            DataTable dt = null;

            //------Check Remove first column---------
            dt = dtSource.Clone();
            dt.ImportRow(dtSource.Rows[0]);

            dt.Columns.Remove(dt.Columns[0]);
            // Remove first column - check column count
            Assert.Equal(2, dt.Columns.Count);

            // Remove first column - check column removed
            Assert.Equal(false, dt.Columns.Contains("Col_0"));

            // Remove first column - check column 0 data
            Assert.Equal(1, dt.Rows[0][0]);

            // Remove first column - check column 1 data
            Assert.Equal(2, dt.Rows[0][1]);

            //------Check Remove middle column---------
            dt = dtSource.Clone();
            dt.ImportRow(dtSource.Rows[0]);

            dt.Columns.Remove(dt.Columns[1]);
            // Remove middle column - check column count
            Assert.Equal(2, dt.Columns.Count);

            // Remove middle column - check column removed
            Assert.Equal(false, dt.Columns.Contains("Col_1"));

            // Remove middle column - check column 0 data
            Assert.Equal(0, dt.Rows[0][0]);

            // Remove middle column - check column 1 data
            Assert.Equal(2, dt.Rows[0][1]);

            //------Check Remove last column---------
            dt = dtSource.Clone();
            dt.ImportRow(dtSource.Rows[0]);

            dt.Columns.Remove(dt.Columns[2]);
            // Remove last column - check column count
            Assert.Equal(2, dt.Columns.Count);

            // Remove last column - check column removed
            Assert.Equal(false, dt.Columns.Contains("Col_2"));

            // Remove last column - check column 0 data
            Assert.Equal(0, dt.Rows[0][0]);

            // Remove last column - check column 1 data
            Assert.Equal(1, dt.Rows[0][1]);

            //------Check Remove column exception---------
            dt = dtSource.Clone();
            dt.ImportRow(dtSource.Rows[0]);
            Assert.Throws<ArgumentException>(() =>
            {
                DataColumn dc = new DataColumn();
                dt.Columns.Remove(dc);
            });
        }