System.Data.Tests.DataViewTest_IBindingList.SortTest C# (CSharp) Méthode

SortTest() private méthode

private SortTest ( ) : void
Résultat void
        public void SortTest()
        {
            DataView dv = new DataView(_dt);
            IBindingList ib = dv;
            ib.ListChanged += new ListChangedEventHandler(OnListChanged);
            try
            {
                _args = null;
                dv.Sort = "[id] DESC";
                Assert.Equal(ListChangedType.Reset, _args.ListChangedType);
                Assert.Equal(-1, _args.NewIndex);
                Assert.Equal(-1, _args.OldIndex);
                Assert.True(ib.IsSorted);
                Assert.NotNull(ib.SortProperty);
                Assert.Equal(ListSortDirection.Descending, ib.SortDirection);


                _args = null;
                dv.Sort = null;
                Assert.Equal(ListChangedType.Reset, _args.ListChangedType);
                Assert.Equal(-1, _args.NewIndex);
                Assert.Equal(-1, _args.OldIndex);
                Assert.False(ib.IsSorted);
                Assert.Null(ib.SortProperty);

                PropertyDescriptorCollection pds = ((ITypedList)dv).GetItemProperties(null);
                PropertyDescriptor pd = pds.Find("id", false);
                _args = null;
                ib.ApplySort(pd, ListSortDirection.Ascending);
                Assert.Equal(ListChangedType.Reset, _args.ListChangedType);
                Assert.Equal(-1, _args.NewIndex);
                Assert.Equal(-1, _args.OldIndex);
                Assert.True(ib.IsSorted);
                Assert.NotNull(ib.SortProperty);
                Assert.Equal("[id]", dv.Sort);

                _args = null;
                ib.RemoveSort();
                Assert.Equal(ListChangedType.Reset, _args.ListChangedType);
                Assert.Equal(-1, _args.NewIndex);
                Assert.Equal(-1, _args.OldIndex);
                Assert.False(ib.IsSorted);
                Assert.Null(ib.SortProperty);
                Assert.Equal(string.Empty, dv.Sort);
                _args = null;

                // descending
                _args = null;
                ib.ApplySort(pd, ListSortDirection.Descending);
                Assert.Equal(20, dv[0][0]);
                Assert.Equal("[id] DESC", dv.Sort);
                _args = null;
            }
            finally
            {
                ib.ListChanged -= new ListChangedEventHandler(OnListChanged);
            }
        }