This commit was manufactured by cvs2svn to create branch 'mono-1-0'.
[mono.git] / mcs / class / corlib / Test / System.Collections / CollectionBaseTest.cs
index 08aecfd4eca3a15257214c0e27e741261741578e..0cda043aac044b3c0a93f54c8d1309a52d28c0ab 100644 (file)
@@ -303,6 +303,31 @@ public class CollectionBaseTest : Assertion
                }\r
        }\r
 \r
+       [Test]\r
+       public void SetCompleteUndo ()\r
+       {\r
+               ConcreteCollection coll = new ConcreteCollection (0);\r
+\r
+               bool throwsException = true;\r
+\r
+               coll.BaseList.Add (88);\r
+               coll.onValidateFired = false;\r
+               coll.onInsertFired = false;\r
+               coll.onSetCompleteFired = false;\r
+               coll.mustThrowException = 3;\r
+               try {\r
+                       coll.BaseList [0] = 11;\r
+                       throwsException = false;\r
+               } catch {\r
+               } finally {\r
+                       Assert (throwsException);\r
+                       Assert (coll.onValidateFired);\r
+                       Assert (coll.onSetFired);\r
+                       Assert (coll.onSetCompleteFired);\r
+                       AssertEquals (88, coll.BaseList [0]);\r
+               }\r
+       }\r
+\r
        [Test]\r
        [ExpectedException (typeof (ArgumentException))]\r
        public void InvalidRemove ()\r