diff options
Diffstat (limited to 'mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FormEventTest.cs')
-rw-r--r-- | mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FormEventTest.cs | 237 |
1 files changed, 237 insertions, 0 deletions
diff --git a/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FormEventTest.cs b/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FormEventTest.cs new file mode 100644 index 00000000000..e396aa1ea51 --- /dev/null +++ b/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FormEventTest.cs @@ -0,0 +1,237 @@ +// +// Copyright (c) 2005 Novell, Inc. +// +// Authors: +// Ritvik Mayank (mritvik@novell.com) +// + +using System; +using NUnit.Framework; +using System.Windows.Forms; +using System.Drawing; +using System.Collections; +using System.ComponentModel; +using System.Threading; +using System.Globalization; + +namespace MonoTests.System.Windows.Forms +{ + [TestFixture] + public class FormEvent + { + static bool eventhandled = false; + public void New_EventHandler (object sender, EventArgs e) + { + eventhandled = true; + } + + [Test, Ignore ("Manual Intervention")] + public void ActivatedTest () + { + Form myform = new Form (); + myform.Activated += new EventHandler (New_EventHandler); + myform.Activate (); + myform.ShowDialog (); + Assert.AreEqual (true, eventhandled, "#A1"); + } + + [Test, Ignore ("Manual Intervention")] + public void ClosedTest () + { + Form myform = new Form (); + myform.Closed += new EventHandler (New_EventHandler); + eventhandled = false; + myform.Close (); + myform.ShowDialog (); + Assert.AreEqual (true, eventhandled, "#A2"); + } + + [Test, Ignore ("Manual Intervention")] + public void DeactivateTest () + { + Form myform = new Form (); + myform.Deactivate += new EventHandler (New_EventHandler); + eventhandled = false; + myform.Close (); + myform.Activate (); + myform.ShowDialog (); + Assert.AreEqual (true, eventhandled, "#A3"); + } + + [Test, Ignore ("Manual Intervention")] + public void LoadTest () + { + Form myform = new Form (); + myform.Load += new EventHandler (New_EventHandler); + eventhandled = false; + myform.ShowDialog (); + Assert.AreEqual (true, eventhandled, "#A4"); + myform.Dispose (); + } + + class MyForm : Form + { + public void MaximizeBoundsTest () + { + this.MaximizedBounds = new Rectangle (10,10,100,100); + } + } + + [Test] + public void MaximizedBoundsChangedTest () + { + MyForm myform = new MyForm (); + myform.MaximizedBoundsChanged += new EventHandler (New_EventHandler); + eventhandled = false; + myform.MaximizeBoundsTest (); + Assert.AreEqual (true, eventhandled, "#A5"); + myform.Dispose (); + } + + [Test] + public void MaximumSizeChangedTest () + { + Form myform = new Form (); + myform.MaximumSizeChanged += new EventHandler (New_EventHandler); + eventhandled = false; + myform.MaximumSize = new Size (500, 500); + Assert.AreEqual (true, eventhandled, "#A6"); + myform.Dispose (); + } + + [Test, Ignore ("Manual Intervention")] + public void MdiChildActivateTest () + { + Form parent = new Form (); + Form child = new Form (); + parent.IsMdiContainer = true; + child.IsMdiContainer = false; + child.MdiParent = parent; + parent.MdiChildActivate += new EventHandler (New_EventHandler); + eventhandled = false; + using (parent) + { + child.Visible = true; + parent.Show (); + Assert.AreEqual (true, eventhandled, "#A7"); + eventhandled = false; + child.Close (); + Assert.AreEqual (true, eventhandled, "#A8"); + } + } + + [Test] + public void MinimumSizeChangedTest () + { + Form myform = new Form (); + myform.MinimumSizeChanged += new EventHandler (New_EventHandler); + eventhandled = false; + myform.MinimumSize = new Size(100, 100); + Assert.AreEqual (true, eventhandled, "#A10"); + myform.Dispose (); + } + } + + [TestFixture] + public class ClosingEvent + { + bool cancel = true; + CancelEventArgs args = null; + public void Closing_Handler (object sender, CancelEventArgs e) + { + e.Cancel = cancel; + args = e; + } + + [Test, Ignore ("visual test")] + public void ClosingEventTest () + { + Form myform = new Form (); + myform.Closing += new CancelEventHandler (Closing_Handler); + myform.Show (); + args = null; + myform.Close (); + Assert.AreEqual (true, args != null, "#A11"); + Assert.AreEqual (true, myform.Visible, "#A12"); + cancel = false; + args = null; + myform.Close (); + Assert.AreEqual (true, args != null, "#A13"); + Assert.AreEqual (false, myform.Visible, "#A14"); + } + } + + [TestFixture,Ignore ("Test Breaks")] + public class InputLanguageChangedEvent + { + static bool eventhandled = false; + public void InputLanguage_Handler (object sender,InputLanguageChangedEventArgs e) + { + eventhandled = true; + } + + [Test] + public void InputLanguageChangedEventTest () + { + Form myform = new Form (); + CultureInfo oldci = Thread.CurrentThread.CurrentCulture; + CultureInfo oldcui = Thread.CurrentThread.CurrentUICulture; + InputLanguage oldil = InputLanguage.CurrentInputLanguage; + try + { + if (InputLanguage.InstalledInputLanguages.Count > 1) + { + InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[0]; + myform.InputLanguageChanged += new InputLanguageChangedEventHandler (InputLanguage_Handler); + Thread.CurrentThread.CurrentCulture = new CultureInfo ("ta-IN"); + Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture; + InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[1]; + Assert.AreEqual (true, eventhandled, "#A15"); + } + } + finally + { + Thread.CurrentThread.CurrentCulture = oldci; + Thread.CurrentThread.CurrentUICulture = oldcui; + InputLanguage.CurrentInputLanguage = oldil; + } + } + } + + [TestFixture,Ignore ("Test Breaks")] + public class InputLanguageChangingdEvent + { + static bool eventhandled = false; + public void InputLangChanging_Handler(object sender,InputLanguageChangingEventArgs e) + { + eventhandled = true; + } + + [Test] + public void InputLanguageChangingEventTest () + { + Form myform = new Form (); + CultureInfo oldci = Thread.CurrentThread.CurrentCulture; + CultureInfo oldcui = Thread.CurrentThread.CurrentUICulture; + InputLanguage oldil = InputLanguage.CurrentInputLanguage; + try + { + if (InputLanguage.InstalledInputLanguages.Count > 1) + { + InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[0]; + myform.InputLanguageChanging += new InputLanguageChangingEventHandler (InputLangChanging_Handler); + Thread.CurrentThread.CurrentCulture = new CultureInfo ("ta-IN"); + Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture; + InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[1]; + Assert.AreEqual (true, eventhandled, "#A16"); + } + } + finally + { + Thread.CurrentThread.CurrentCulture = oldci; + Thread.CurrentThread.CurrentUICulture = oldcui; + InputLanguage.CurrentInputLanguage = oldil; + } + } + } +} |