Merge pull request #3106 from lambdageek/dev/monoerror-unhandled
[mono.git] / mcs / class / System.Data / Test / System.Data / ConstraintCollectionTest2.cs
index 96a76b641a73f353d067556cfa24eb6bd6f5c408..66c126fd520bd656e795eea1109cf12028a27684 100644 (file)
@@ -409,216 +409,216 @@ namespace MonoTests.System.Data
                public delegate void  testExceptionMethodCallback();
 
                [Test]
-               public void Add_Constraint()\r
-               {\r
-                       DataTable dt = DataProvider.CreateUniqueConstraint();\r
-                       Assert.AreEqual(1,dt.Constraints.Count,"ccac#1"); \r
-                       Assert.AreEqual("Constraint1",dt.Constraints[0].ConstraintName,"ccac#2");                       \r
-\r
-                       DataSet ds = DataProvider.CreateForigenConstraint();\r
-                       Assert.AreEqual(1,ds.Tables[1].Constraints.Count,"ccac#3");\r
-                       Assert.AreEqual(1,ds.Tables[0].Constraints.Count,"ccac#4");\r
-\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new ConstraintException()); \r
-                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakUniqueConstraint),arr);\r
-\r
-                       arr = new ArrayList(1);\r
-                       arr.Add(new InvalidConstraintException()); \r
-                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakForigenConstraint),arr);                  \r
-               }\r
-\r
-               public void TestException(testExceptionMethodCallback dlg,IList exceptionList)\r
-               {                               \r
-                       try {\r
-                               dlg();\r
-                               Assert.Fail("ccac#A", ((Exception)exceptionList[0]).ToString()); \r
-                       }\r
-                       catch(Exception ex) {                                   \r
-                               foreach(Exception expectedEx in exceptionList)\r
-                                       if ( (expectedEx.GetType()) == (ex.GetType()) )\r
-                                               return;                         \r
-                               Assert.Fail("ccac#B");\r
-                       }               \r
+               public void Add_Constraint()
+               {
+                       DataTable dt = DataProvider.CreateUniqueConstraint();
+                       Assert.AreEqual(1,dt.Constraints.Count,"ccac#1"); 
+                       Assert.AreEqual("Constraint1",dt.Constraints[0].ConstraintName,"ccac#2");                       
+
+                       DataSet ds = DataProvider.CreateForigenConstraint();
+                       Assert.AreEqual(1,ds.Tables[1].Constraints.Count,"ccac#3");
+                       Assert.AreEqual(1,ds.Tables[0].Constraints.Count,"ccac#4");
+
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new ConstraintException()); 
+                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakUniqueConstraint),arr);
+
+                       arr = new ArrayList(1);
+                       arr.Add(new InvalidConstraintException()); 
+                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakForigenConstraint),arr);                  
+               }
+
+               public void TestException(testExceptionMethodCallback dlg,IList exceptionList)
+               {                               
+                       try {
+                               dlg();
+                               Assert.Fail("ccac#A", ((Exception)exceptionList[0]).ToString()); 
+                       }
+                       catch(Exception ex) {                                   
+                               foreach(Exception expectedEx in exceptionList)
+                                       if ( (expectedEx.GetType()) == (ex.GetType()) )
+                                               return;                         
+                               Assert.Fail("ccac#B");
+                       }               
                }
 
                [Test]
-               public void Add_SDB1()\r
-               {\r
-                       DataTable dt = DataProvider.CreateParentDataTable();\r
-                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],true);\r
-                       Assert.AreEqual(1,dt.Constraints.Count,1); \r
-                       Assert.AreEqual("UniqueConstraint",dt.Constraints[0].ConstraintName,"CN34");                    \r
-               }\r
+               public void Add_SDB1()
+               {
+                       DataTable dt = DataProvider.CreateParentDataTable();
+                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],true);
+                       Assert.AreEqual(1,(double) dt.Constraints.Count,1); 
+                       Assert.AreEqual("UniqueConstraint",dt.Constraints[0].ConstraintName,"CN34");                    
+               }
                
                [Test]
-               public void Add_SDB2()\r
-               {\r
-                       DataTable dt = DataProvider.CreateParentDataTable();\r
-                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],false);\r
-                       Assert.AreEqual(1,dt.Constraints.Count,"CN34"); \r
-                       Assert.AreEqual("UniqueConstraint",dt.Constraints[0].ConstraintName,"CN35");                    \r
-               }\r
+               public void Add_SDB2()
+               {
+                       DataTable dt = DataProvider.CreateParentDataTable();
+                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],false);
+                       Assert.AreEqual(1,dt.Constraints.Count,"CN34"); 
+                       Assert.AreEqual("UniqueConstraint",dt.Constraints[0].ConstraintName,"CN35");                    
+               }
                
                [Test]
-               public void Add_SDB3()\r
-               {\r
-                       DataTable dt = DataProvider.CreateParentDataTable();\r
-                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],true);\r
-                       //Break the constraint\r
-\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new ConstraintException()); \r
-                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakUniqueConstraint),arr);\r
-\r
-               }\r
+               public void Add_SDB3()
+               {
+                       DataTable dt = DataProvider.CreateParentDataTable();
+                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],true);
+                       //Break the constraint
+
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new ConstraintException()); 
+                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakUniqueConstraint),arr);
+
+               }
                
                [Test]
                [ExpectedException(typeof(ConstraintException))]
-               public void Add_SDB4()\r
-               {\r
-                       DataTable dt = DataProvider.CreateParentDataTable();\r
-                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],false);\r
-                       //Break the constraint --> but we shouldn't get the excption --> wrong assumpation\r
-                       //TODO:check the right thing\r
-                       DataProvider.TryToBreakUniqueConstraint();\r
-                       Assert.AreEqual(2,dt.Select("ParentId=1").Length,"CN36");\r
+               public void Add_SDB4()
+               {
+                       DataTable dt = DataProvider.CreateParentDataTable();
+                       dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],false);
+                       //Break the constraint --> but we shouldn't get the excption --> wrong assumpation
+                       //TODO:check the right thing
+                       DataProvider.TryToBreakUniqueConstraint();
+                       Assert.AreEqual(2,dt.Select("ParentId=1").Length,"CN36");
                }
 
                [Test]
-               public void Add_Constraint_Column_Column()\r
-               {\r
-                       DataTable parent = DataProvider.CreateParentDataTable();\r
-                       DataTable child = DataProvider.CreateChildDataTable();\r
-        \r
-                       child.Constraints.Add("ForigenConstraint",parent.Columns[0],child.Columns[0]);\r
-\r
-                       Assert.AreEqual(1,parent.Constraints.Count,"ccaccc#1"); \r
-                       Assert.AreEqual(1,child.Constraints.Count,"ccaccc#2"); \r
-                       Assert.AreEqual("ForigenConstraint",child.Constraints[0].ConstraintName,"ccaccc#3");\r
-\r
-                       parent = DataProvider.CreateParentDataTable();\r
-                       child = DataProvider.CreateChildDataTable();\r
-        \r
-                       child.Constraints.Add("ForigenConstraint",parent.Columns[0],child.Columns[0]);\r
-\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new InvalidConstraintException()); \r
-                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakForigenConstraint),arr);\r
-\r
-                       Assert.AreEqual(1,parent.Constraints.Count,"ccaccc#4"); \r
-                       Assert.AreEqual(1,child.Constraints.Count,"ccaccc#5"); \r
+               public void Add_Constraint_Column_Column()
+               {
+                       DataTable parent = DataProvider.CreateParentDataTable();
+                       DataTable child = DataProvider.CreateChildDataTable();
+        
+                       child.Constraints.Add("ForigenConstraint",parent.Columns[0],child.Columns[0]);
+
+                       Assert.AreEqual(1,parent.Constraints.Count,"ccaccc#1"); 
+                       Assert.AreEqual(1,child.Constraints.Count,"ccaccc#2"); 
+                       Assert.AreEqual("ForigenConstraint",child.Constraints[0].ConstraintName,"ccaccc#3");
+
+                       parent = DataProvider.CreateParentDataTable();
+                       child = DataProvider.CreateChildDataTable();
+        
+                       child.Constraints.Add("ForigenConstraint",parent.Columns[0],child.Columns[0]);
+
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new InvalidConstraintException()); 
+                       TestException( new testExceptionMethodCallback(DataProvider.TryToBreakForigenConstraint),arr);
+
+                       Assert.AreEqual(1,parent.Constraints.Count,"ccaccc#4"); 
+                       Assert.AreEqual(1,child.Constraints.Count,"ccaccc#5"); 
                }
 
                [Test]
-               public void AddRange_C1()\r
-               {\r
-                       DataTable dt = new DataTable();\r
-                       dt.Constraints.AddRange(null);\r
-                       Assert.AreEqual(0,dt.Constraints.Count,"ccarc#1");\r
-               }\r
-\r
+               public void AddRange_C1()
+               {
+                       DataTable dt = new DataTable();
+                       dt.Constraints.AddRange(null);
+                       Assert.AreEqual(0,dt.Constraints.Count,"ccarc#1");
+               }
+
                [Test]
-               public void AddRange_C2()\r
-               {\r
-                       DataSet ds = new DataSet();\r
-                       ds.Tables.Add(DataProvider.CreateParentDataTable());\r
-                       ds.Tables.Add(DataProvider.CreateChildDataTable());\r
-                       ds.Tables[1].Constraints.AddRange(GetConstraintArray(ds)); //Cuz foreign key belongs to child table\r
-                       Assert.AreEqual(2,ds.Tables[1].Constraints.Count,"ccarc#2");\r
-                       Assert.AreEqual(1,ds.Tables[0].Constraints.Count,"ccarc#3");\r
-               }\r
+               public void AddRange_C2()
+               {
+                       DataSet ds = new DataSet();
+                       ds.Tables.Add(DataProvider.CreateParentDataTable());
+                       ds.Tables.Add(DataProvider.CreateChildDataTable());
+                       ds.Tables[1].Constraints.AddRange(GetConstraintArray(ds)); //Cuz foreign key belongs to child table
+                       Assert.AreEqual(2,ds.Tables[1].Constraints.Count,"ccarc#2");
+                       Assert.AreEqual(1,ds.Tables[0].Constraints.Count,"ccarc#3");
+               }
                [Test]
                [ExpectedException(typeof(ArgumentException))]
-               public void AddRange_C3()\r
-               {\r
-                       DataSet ds = new DataSet();\r
-                       ds.Tables.Add(DataProvider.CreateParentDataTable());\r
-                       ds.Tables.Add(DataProvider.CreateChildDataTable());\r
-                       Constraint badConstraint = new UniqueConstraint(ds.Tables[0].Columns[0]);\r
-\r
-                       ds.Tables[1].Constraints.AddRange(new Constraint[] {badConstraint}); //Cuz foreign key belongs to child table                   \r
-               }\r
+               public void AddRange_C3()
+               {
+                       DataSet ds = new DataSet();
+                       ds.Tables.Add(DataProvider.CreateParentDataTable());
+                       ds.Tables.Add(DataProvider.CreateChildDataTable());
+                       Constraint badConstraint = new UniqueConstraint(ds.Tables[0].Columns[0]);
+
+                       ds.Tables[1].Constraints.AddRange(new Constraint[] {badConstraint}); //Cuz foreign key belongs to child table                   
+               }
                
                [Test]
-               public void AddRange_C4()\r
-               {\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new ArgumentException());\r
-                       TestException(new testExceptionMethodCallback(AddRange_C3),arr);\r
-               }\r
-\r
-               private Constraint[] GetConstraintArray(DataSet ds)\r
-               {\r
-                       DataTable parent = ds.Tables[0]; \r
-                       DataTable child =  ds.Tables[1]; \r
-                       Constraint[] constArray = new Constraint[2];\r
-\r
-                       //Create unique \r
-                       constArray[0] = new UniqueConstraint("Unique1",child.Columns["ChildDouble"]);\r
-                       //Create foreign \r
-                       constArray[1] = new ForeignKeyConstraint(parent.Columns[0],child.Columns[1]);\r
-\r
-                       return constArray;\r
-               }\r
-\r
-               [Test]\r
-               public void Item()\r
-               {\r
-                       DataTable dt = DataProvider.CreateUniqueConstraint();\r
-                       dt.Constraints[0].ConstraintName = "constraint1";\r
-                       Assert.AreEqual("constraint1",dt.Constraints[0].ConstraintName,"cci#1");\r
-                       Assert.AreEqual("constraint1",dt.Constraints["constraint1"].ConstraintName,"cci#2");\r
-\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new IndexOutOfRangeException()); \r
-                       TestException(new testExceptionMethodCallback(Item2),arr);\r
-               }\r
-\r
-               private void Item2()\r
-               {\r
-                       DataTable dt = DataProvider.CreateUniqueConstraint();\r
-                       dt.Constraints[1].ConstraintName = "error";\r
-               }\r
-\r
-               private bool collectionChanged=false;\r
-\r
-               [Test]\r
-               public void RemoveAt_Integer()\r
-               {\r
-                       DataTable dt = DataProvider.CreateUniqueConstraint();\r
-                       dt.Constraints.RemoveAt(0);\r
-                       Assert.AreEqual(0,dt.Constraints.Count,"ccrai#1");\r
-\r
-                       dt = DataProvider.CreateUniqueConstraint();\r
-                       Constraint con = new UniqueConstraint(dt.Columns["String1"],false);\r
-                       dt.Constraints[0].ConstraintName = "constraint1";\r
-                       con.ConstraintName="constraint2";\r
-                       dt.Constraints.Add(con);\r
-                       dt.Constraints.RemoveAt(0);\r
-                       Assert.AreEqual(1,dt.Constraints.Count,"ccrai#2");\r
-                       Assert.AreEqual("constraint2",dt.Constraints[0].ConstraintName,"ccrai#3");\r
-\r
-                       dt = DataProvider.CreateUniqueConstraint();\r
-                       dt.Constraints.CollectionChanged+=new CollectionChangeEventHandler(Constraints_CollectionChanged);\r
-                       dt.Constraints.RemoveAt(0);\r
-                       Assert.AreEqual(true,collectionChanged,"ccrai#4"); //Checking that event has raised\r
-\r
-                       ArrayList arr = new ArrayList(1);\r
-                       arr.Add(new IndexOutOfRangeException());\r
-                       TestException(new testExceptionMethodCallback(RemoveAt_I),arr);\r
-               }\r
-\r
-               private void Constraints_CollectionChanged(object sender, CollectionChangeEventArgs e)\r
-               {\r
-                       collectionChanged = true;\r
-               }\r
-\r
-               private void RemoveAt_I()\r
-               {\r
-                       DataTable dt = DataProvider.CreateUniqueConstraint();\r
-                       dt.Constraints.RemoveAt(2);\r
-               }\r
+               public void AddRange_C4()
+               {
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new ArgumentException());
+                       TestException(new testExceptionMethodCallback(AddRange_C3),arr);
+               }
+
+               private Constraint[] GetConstraintArray(DataSet ds)
+               {
+                       DataTable parent = ds.Tables[0]; 
+                       DataTable child =  ds.Tables[1]; 
+                       Constraint[] constArray = new Constraint[2];
+
+                       //Create unique 
+                       constArray[0] = new UniqueConstraint("Unique1",child.Columns["ChildDouble"]);
+                       //Create foreign 
+                       constArray[1] = new ForeignKeyConstraint(parent.Columns[0],child.Columns[1]);
+
+                       return constArray;
+               }
+
+               [Test]
+               public void Item()
+               {
+                       DataTable dt = DataProvider.CreateUniqueConstraint();
+                       dt.Constraints[0].ConstraintName = "constraint1";
+                       Assert.AreEqual("constraint1",dt.Constraints[0].ConstraintName,"cci#1");
+                       Assert.AreEqual("constraint1",dt.Constraints["constraint1"].ConstraintName,"cci#2");
+
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new IndexOutOfRangeException()); 
+                       TestException(new testExceptionMethodCallback(Item2),arr);
+               }
+
+               private void Item2()
+               {
+                       DataTable dt = DataProvider.CreateUniqueConstraint();
+                       dt.Constraints[1].ConstraintName = "error";
+               }
+
+               private bool collectionChanged=false;
+
+               [Test]
+               public void RemoveAt_Integer()
+               {
+                       DataTable dt = DataProvider.CreateUniqueConstraint();
+                       dt.Constraints.RemoveAt(0);
+                       Assert.AreEqual(0,dt.Constraints.Count,"ccrai#1");
+
+                       dt = DataProvider.CreateUniqueConstraint();
+                       Constraint con = new UniqueConstraint(dt.Columns["String1"],false);
+                       dt.Constraints[0].ConstraintName = "constraint1";
+                       con.ConstraintName="constraint2";
+                       dt.Constraints.Add(con);
+                       dt.Constraints.RemoveAt(0);
+                       Assert.AreEqual(1,dt.Constraints.Count,"ccrai#2");
+                       Assert.AreEqual("constraint2",dt.Constraints[0].ConstraintName,"ccrai#3");
+
+                       dt = DataProvider.CreateUniqueConstraint();
+                       dt.Constraints.CollectionChanged+=new CollectionChangeEventHandler(Constraints_CollectionChanged);
+                       dt.Constraints.RemoveAt(0);
+                       Assert.AreEqual(true,collectionChanged,"ccrai#4"); //Checking that event has raised
+
+                       ArrayList arr = new ArrayList(1);
+                       arr.Add(new IndexOutOfRangeException());
+                       TestException(new testExceptionMethodCallback(RemoveAt_I),arr);
+               }
+
+               private void Constraints_CollectionChanged(object sender, CollectionChangeEventArgs e)
+               {
+                       collectionChanged = true;
+               }
+
+               private void RemoveAt_I()
+               {
+                       DataTable dt = DataProvider.CreateUniqueConstraint();
+                       dt.Constraints.RemoveAt(2);
+               }
 
                [Test]
                public void RemoveTest ()