Merge pull request #1624 from esdrubal/getprocesstimes
[mono.git] / mcs / class / System.Data / Test / System.Data / DataViewTest2.cs
index 8622c9a03e7f536bf6bf81fc5450de6c2de3640d..f727d736d2a05a639ce2441350bd4bb9eedc5651 100644 (file)
 
 using NUnit.Framework;
 using System;
-using System.IO;
+using System.Collections;
 using System.ComponentModel;
+using System.IO;
 using System.Data;
 using MonoTests.System.Data.Utils;
 
-namespace MonoTests_System.Data
+namespace MonoTests.System.Data
 {
        [TestFixture] public class DataViewTest2
        {
@@ -41,7 +42,7 @@ namespace MonoTests_System.Data
 
                class EventProperties  //hold the event properties to be checked
                {
-                       public System.ComponentModel.ListChangedType lstType ;
+                       public ListChangedType lstType ;
                        public int NewIndex;
                        public int OldIndex;
                }
@@ -368,8 +369,17 @@ namespace MonoTests_System.Data
 
                        dv.Sort = "String1,ChildId";
                        // Find = wrong sort, can not find
-                       dvArr = dv.FindRows(new object[] {"3","3-String1"});
-                       Assert.AreEqual(0, dvArr.Length  , "DV42");
+                       try 
+                       {
+                               dvArr = dv.FindRows(new object[] {"3","3-String1"});
+                               Assert.Fail("DV42: FindRows Failed to throw ArgumentException");
+                       }
+                       catch (FormatException) {}
+                       catch (AssertionException exc) {throw  exc;}
+                       catch (Exception exc)
+                       {
+                               Assert.Fail("DV42-2: FindRows. Wrong exception type. Got:" + exc);
+                       }
 
                        dv.Sort = "ChildId,String1";
 
@@ -480,8 +490,17 @@ namespace MonoTests_System.Data
 
                        dv.Sort = "String1,ParentId";
                        // Find = wrong sort, can not find
-                       FindResult = dv.Find(new object[] {"3","3-String1"});
-                       Assert.AreEqual(-1, FindResult , "DV51");
+                       try 
+                       {
+                               FindResult = dv.Find(new object[] {"3","3-String1"});
+                               Assert.Fail("DV51: Find Failed to throw ArgumentException");
+                       }
+                       catch (FormatException) {}
+                       catch (AssertionException exc) {throw  exc;}
+                       catch (Exception exc)
+                       {
+                               Assert.Fail("DV51-2: Find. Wrong exception type. Got:" + exc);
+                       }
 
                        dv.Sort = "ParentId,String1";
                        // Find 
@@ -508,7 +527,7 @@ namespace MonoTests_System.Data
                        //create the dataview for the table
                        DataView dv = new DataView(dt);
 
-                       System.Collections.IEnumerator ienm = null;
+                       IEnumerator ienm = null;
 
                        // GetEnumerator != null
                        ienm = dv.GetEnumerator();
@@ -549,7 +568,7 @@ namespace MonoTests_System.Data
                        DataView dv = new DataView(dt);
 
                        //add event handler
-                       dv.ListChanged +=new System.ComponentModel.ListChangedEventHandler(dv_ListChanged);
+                       dv.ListChanged +=new ListChangedEventHandler(dv_ListChanged);
 
                        // ----- Change Value ---------
                        evProp = null;
@@ -557,11 +576,11 @@ namespace MonoTests_System.Data
                        dv[1]["String1"] = "something";
                        Assert.AreEqual(true , evProp!=null , "DV58");
                        // change value - ListChangedType
-                       Assert.AreEqual(System.ComponentModel.ListChangedType.ItemChanged, evProp.lstType , "DV59");
+                       Assert.AreEqual(ListChangedType.ItemChanged, evProp.lstType , "DV59");
                        // change value - NewIndex
                        Assert.AreEqual(1, evProp.NewIndex, "DV60");
                        // change value - OldIndex
-                       Assert.AreEqual(-1, evProp.OldIndex , "DV61");
+                       Assert.AreEqual(1, evProp.OldIndex , "DV61");
 
                        // ----- Add New ---------
                        evProp = null;
@@ -569,7 +588,7 @@ namespace MonoTests_System.Data
                        dv.AddNew();
                        Assert.AreEqual(true , evProp!=null , "DV62");
                        // Add New  - ListChangedType
-                       Assert.AreEqual(System.ComponentModel.ListChangedType.ItemAdded , evProp.lstType , "DV63");
+                       Assert.AreEqual(ListChangedType.ItemAdded , evProp.lstType , "DV63");
                        // Add New  - NewIndex
                        Assert.AreEqual(6, evProp.NewIndex, "DV64");
                        // Add New  - OldIndex
@@ -581,7 +600,7 @@ namespace MonoTests_System.Data
                        dv.Sort = "ParentId Desc";
                        Assert.AreEqual(true , evProp!=null , "DV66");
                        // sort - ListChangedType
-                       Assert.AreEqual(System.ComponentModel.ListChangedType.Reset , evProp.lstType , "DV67");
+                       Assert.AreEqual(ListChangedType.Reset , evProp.lstType , "DV67");
                        // sort - NewIndex
                        Assert.AreEqual(-1, evProp.NewIndex, "DV68");
                        // sort - OldIndex
@@ -627,12 +646,12 @@ namespace MonoTests_System.Data
 
                         Assert.AreEqual(true , evProp != null , "DV168");
                         // Clear DataTable - should emit ListChangedType.Reset
-                        Assert.AreEqual(System.ComponentModel.ListChangedType.Reset , evProp.lstType , "DV169");
+                        Assert.AreEqual(ListChangedType.Reset , evProp.lstType , "DV169");
                         // Clear DataTable - should clear view count
                         Assert.AreEqual(0, dt.DefaultView.Count , "DV169");
                 }
 
-               private void dv_ListChanged(object sender, System.ComponentModel.ListChangedEventArgs e)
+               private void dv_ListChanged(object sender, ListChangedEventArgs e)
                {
                        evProp = new EventProperties(); 
                        evProp.lstType = e.ListChangedType;
@@ -646,7 +665,7 @@ namespace MonoTests_System.Data
                        // this test also check DataView.Count property
 
                        DataRowView[] drvResult = null;
-                       System.Collections.ArrayList al = new System.Collections.ArrayList();
+                       ArrayList al = new ArrayList();
 
                        //create the source datatable
                        DataTable dt = DataProvider.CreateChildDataTable();
@@ -763,7 +782,7 @@ namespace MonoTests_System.Data
                         */
 
                        //DataRowView[] drvResult = null;
-                       System.Collections.ArrayList al = new System.Collections.ArrayList();
+                       ArrayList al = new ArrayList();
 
                        DataTable dt = DataProvider.CreateParentDataTable();
 
@@ -821,7 +840,7 @@ namespace MonoTests_System.Data
                private DataRow[] GetResultRows(DataTable dt,DataRowState State)
                {
                        //get expected rows
-                       System.Collections.ArrayList al = new System.Collections.ArrayList();
+                       ArrayList al = new ArrayList();
                        DataRowVersion drVer = DataRowVersion.Current;
 
                        //From MSDN -   The row the default version for the current DataRowState.
@@ -1095,14 +1114,14 @@ namespace MonoTests_System.Data
                        //      Otherwise, if the DataView was created without a DataViewManager, this property is a null reference (Nothing in Visual Basic).
 
                        dvm = dv.DataViewManager;
-                       Assert.AreEqual(ds.DefaultViewManager,dvm, "DV114");
+                       Assert.AreSame (ds.DefaultViewManager, dvm, "DV114");
 
                        dv = new DataView(dt);
                        dvm = dv.DataViewManager;
-                       Assert.AreEqual(null,dvm,"DV115");
+                       Assert.IsNull (dvm, "DV115");
                        
                        dv = ds.DefaultViewManager.CreateDataView(dt);
-                       Assert.AreEqual(ds.DefaultViewManager,dv.DataViewManager , "DV116");
+                       Assert.AreSame (ds.DefaultViewManager, dv.DataViewManager , "DV116");
                }
 
                [Test]
@@ -1126,7 +1145,7 @@ namespace MonoTests_System.Data
                        evProp = null;
                        table.Rows[0][0] = 5;
                        Assert.AreEqual (0, evProp.NewIndex, "#4");
-                       Assert.AreEqual (-1, evProp.OldIndex, "#5");
+                       Assert.AreEqual (0, evProp.OldIndex, "#5");
                        Assert.AreEqual (ListChangedType.ItemChanged, evProp.lstType, "#6");
 
                        evProp = null;
@@ -1165,7 +1184,6 @@ namespace MonoTests_System.Data
                        Assert.AreEqual(DataViewRowState.CurrentRows, view.RowStateFilter, "#4");
                }
 
-#if NET_2_0
                [Test]
                public void TestEquals_SameTableDiffViewProp()
                {
@@ -1301,7 +1319,7 @@ namespace MonoTests_System.Data
                        }
                        DataTable newTable1 = view.ToTable(false, new string[] { });
                        Assert.AreEqual(10, newTable1.Rows.Count, "#3");
-                       
+
                        newTable1 = view.ToTable(true, new string[] {});
                        Assert.AreEqual(3, newTable1.Columns.Count, "#4");
                        Assert.AreEqual(5, newTable1.Rows.Count, "#5");
@@ -1341,6 +1359,5 @@ namespace MonoTests_System.Data
                        Assert.AreEqual (2, newTable1.Rows [1][1], "#16");
                        Assert.AreEqual (1, newTable1.Rows [2][1], "#17");
                }
-#endif
        }
 }