* Makefile.am: Build `docs` after `runtime`, so that it can depend
[mono.git] / mcs / class / Managed.Windows.Forms / Test / System.Windows.Forms / ControlEventTest.cs
index b01f30f47875258e5aacea4afb87cb0d3fa27c14..198f557e8927db49a245b5605a72827739b209b1 100644 (file)
@@ -260,7 +260,39 @@ namespace MonoTests.System.Windows.Forms
                        c.Visible = true;
                        c.Height = 100;
                        Assert.AreEqual (true, eventhandled, "#D1");
+               }
+
+               int event_count;
+               int resize_event;
+               int size_changed_event;
+               int layout_event;
+
+               void resize (object sender, EventArgs e)
+               {
+                       resize_event = ++event_count;
+               }
+
+               void layout (object sender, LayoutEventArgs le)
+               {
+                       layout_event = ++event_count;
+               }
+
+               void size_changed (object sender, EventArgs e)
+               {
+                       size_changed_event = ++event_count;
+               }
 
+               [Test]
+               public void LayoutResizeTest ()
+               {
+                       Control c = new Control ();
+                       c.Layout += new LayoutEventHandler (layout);
+                       c.Resize += new EventHandler (resize);
+                       c.SizeChanged += new EventHandler (size_changed);
+                       c.Size = new Size (100, 100);
+                       Assert.AreEqual (1, layout_event, "1");
+                       Assert.AreEqual (2, resize_event, "2");
+                       Assert.AreEqual (3, size_changed_event, "3");
                }
        }
 
@@ -362,6 +394,8 @@ namespace MonoTests.System.Windows.Forms
 
                        form.Refresh ();
                        Assert.AreEqual (0, invalidated, "#3");
+                       
+                       form.Close ();
                }
 
                private void Control_Invalidated (object sender, InvalidateEventArgs e)