| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052 |
- //
- // Copyright (c) 2005 Novell, Inc.
- //
- // Authors:
- // Hisham Mardam Bey ([email protected])
- //
- //
- using System;
- using NUnit.Framework;
- using System.Windows.Forms;
- using System.Drawing;
- using System.Collections;
- namespace MonoTests.System.Windows.Forms
- {
- [TestFixture]
- public class LabelTest
- {
- [Test]
- public void LabelAccessibility ()
- {
- Label l = new Label ();
- Assert.IsNotNull (l.AccessibilityObject, "1");
- }
- [Test]
- public void PreferredSize ()
- {
- Label l = new Label();
- // preferred width is 0 by default
- Assert.AreEqual (0, l.PreferredWidth, "2");
- // and after text is changed it's something else
- l.Text = "hi";
- Assert.IsTrue (l.PreferredWidth > 0, "3");
- // now add it to a form and see
- Form f = new Form ();
- f.ShowInTaskbar = false;
- l.Text = "";
- f.Controls.Add (l);
- f.Show ();
- Assert.AreEqual (0, l.PreferredWidth, "4");
- l.Text = "hi";
- Assert.IsTrue (l.PreferredWidth > 0, "5");
- f.Dispose ();
- }
- [Test]
- public void BoundsTest ()
- {
- Label l = new Label ();
- Assert.AreEqual (new Rectangle (0,0,100,23), l.Bounds, "1");
- Assert.AreEqual (new Rectangle (0,0,100,23), l.ClientRectangle, "2");
- Assert.AreEqual (new Size (100,23), l.ClientSize, "3");
- }
- [Test]
- public void PubPropTest ()
- {
- Label l = new Label ();
- Assert.IsFalse (l.AutoSize, "#3");
-
- Assert.AreEqual ("Control", l.BackColor.Name , "#6");
- Assert.IsNull (l.BackgroundImage, "#8");
- Assert.AreEqual (BorderStyle.None , l.BorderStyle, "#9");
-
- Assert.IsNull (l.Container, "#19");
- Assert.IsFalse (l.ContainsFocus, "#20");
- Assert.IsNull (l.ContextMenu, "#21");
- Assert.IsFalse (l.Created, "#23");
- Assert.AreEqual (Cursors.Default , l.Cursor, "#24");
-
- Assert.IsNotNull (l.DataBindings, "#25");
- Assert.AreEqual (DockStyle.None, l.Dock, "#28");
-
- Assert.IsTrue (l.Enabled, "#29");
-
- Assert.AreEqual (FlatStyle.Standard, l.FlatStyle, "#30");
- Assert.IsFalse (l.Focused, "#31");
- Assert.AreEqual (FontFamily.GenericSansSerif, l.Font.FontFamily, "#32");
- Assert.AreEqual (SystemColors.ControlText, l.ForeColor, "#33");
-
- Assert.IsFalse (l.HasChildren, "#35");
-
- Assert.IsNull (l.Image, "#37");
- Assert.AreEqual (ContentAlignment.MiddleCenter, l.ImageAlign, "#38");
- Assert.AreEqual (-1, l.ImageIndex, "#39");
- Assert.IsNull (l.ImageList, "#40");
- Assert.IsFalse (l.InvokeRequired, "#42");
- Assert.IsFalse (l.IsAccessible, "#43");
- Assert.IsFalse (l.IsDisposed, "#44");
-
- Assert.IsNull (l.Parent, "#49");
- Assert.IsFalse (l.RecreatingHandle, "#54");
- Assert.IsNull (l.Region, "#55");
- Assert.AreEqual (RightToLeft.No, l.RightToLeft, "#57");
-
- Assert.IsNull (l.Site, "#58");
-
- Assert.AreEqual (0, l.TabIndex, "#60");
- Assert.IsNull (l.Tag, "#61");
- Assert.AreEqual ("", l.Text, "#62");
- Assert.AreEqual (ContentAlignment.TopLeft, l.TextAlign, "#63");
- Assert.IsNull (l.TopLevelControl, "#65");
-
- Assert.IsTrue (l.UseMnemonic, "#66");
-
- Assert.IsTrue (l.Visible, "#67");
- }
- [Test]
- public void LabelEqualsTest () {
- Label s1 = new Label ();
- Label s2 = new Label ();
- s1.Text = "abc";
- s2.Text = "abc";
- Assert.IsFalse (s1.Equals (s2), "#69");
- Assert.IsTrue (s1.Equals (s1), "#70");
- }
-
- [Test]
- public void LabelScaleTest () {
- Label r1 = new Label ();
- r1.Width = 40;
- r1.Height = 20 ;
- r1.Scale (2);
- Assert.AreEqual (80, r1.Width, "#71");
- Assert.AreEqual (40, r1.Height, "#72");
- }
- [Test]
- public void ToStringTest ()
- {
- Label l = new Label ();
- l.Text = "My Label";
- Assert.AreEqual ("System.Windows.Forms.Label, Text: My Label", l.ToString (), "T1");
- }
- }
- [TestFixture]
- public class LabelEventTest
- {
- static bool eventhandled = false;
- public void Label_EventHandler (object sender,EventArgs e)
- {
- eventhandled = true;
- }
- public void Label_KeyDownEventHandler (object sender, KeyEventArgs e)
- {
- eventhandled = true;
- }
- [Test]
- public void AutoSizeChangedChangedTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- Label l = new Label ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.AutoSizeChanged += new EventHandler (Label_EventHandler);
- l.AutoSize = true;
- Assert.AreEqual (true, eventhandled, "B4");
- eventhandled = false;
- myform.Dispose();
- }
- [Test]
- public void BackgroundImageChangedTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- Label l = new Label ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.BackgroundImageChanged += new EventHandler (Label_EventHandler);
- l.BackgroundImage = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
- Assert.AreEqual (true, eventhandled, "B4");
- eventhandled = false;
- myform.Dispose();
- }
- [Test]
- public void ImeModeChangedTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- Label l = new Label ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.ImeModeChanged += new EventHandler (Label_EventHandler);
- l.ImeMode = ImeMode.Katakana;
- Assert.AreEqual (true, eventhandled, "I16");
- eventhandled = false;
- myform.Dispose();
- }
- [Test]
- public void KeyDownTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.KeyDown += new KeyEventHandler (Label_KeyDownEventHandler);
- l.KeyPressA ();
- Assert.AreEqual (true, eventhandled, "K1");
- eventhandled = false;
- myform.Dispose();
- }
- [Test]
- public void TabStopChangedTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- Label l = new Label ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.TabStopChanged += new EventHandler (Label_EventHandler);
- l.TabStop = true;
- Assert.AreEqual (true, eventhandled, "T3");
- eventhandled = false;
- myform.Dispose();
- }
- [Test]
- public void TextAlignChangedTest ()
- {
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- Label l = new Label ();
- l.Visible = true;
- myform.Controls.Add (l);
- l.TextAlignChanged += new EventHandler (Label_EventHandler);
- l.TextAlign = ContentAlignment.TopRight;
- Assert.AreEqual (true, eventhandled, "T4");
- eventhandled = false;
- myform.Dispose();
- }
- }
- public class MyLabelInvalidate : MyLabel
- {
- //protected ArrayList results = new ArrayList ();
- public MyLabelInvalidate () : base ()
- {}
- protected override void OnInvalidated (InvalidateEventArgs e)
- {
- base.OnInvalidated (e);
- string res = (string)results [results.Count - 1];
- results [results.Count - 1 ] = string.Concat (res, "," + e.InvalidRect.ToString ());
- //results.Add ("OnInvalidate," + e.InvalidRect.ToString ());
- }
- //public ArrayList Results {
- // get { return results; }
- //}
- }
- public class MyLabel : Label
- {
- protected ArrayList results = new ArrayList ();
- public MyLabel () : base ()
- { }
- protected override void OnAutoSizeChanged (EventArgs e)
- {
- results.Add ("OnAutoSizeChanged");
- base.OnAutoSizeChanged (e);
- }
- protected override void OnBackgroundImageChanged (EventArgs e)
- {
- results.Add ("OnBackgroundImageChanged");
- base.OnBackgroundImageChanged (e);
- }
- protected override void OnImeModeChanged (EventArgs e)
- {
- results.Add ("OnImeModeChanged");
- base.OnImeModeChanged (e);
- }
- protected override void OnKeyDown (KeyEventArgs e)
- {
- results.Add ("OnKeyDown,"+(char)e.KeyValue);
- base.OnKeyDown (e);
- }
- protected override void OnKeyPress (KeyPressEventArgs e)
- {
- results.Add ("OnKeyPress,"+e.KeyChar.ToString ());
- base.OnKeyPress (e);
- }
- protected override void OnKeyUp (KeyEventArgs e)
- {
- results.Add ("OnKeyUp,"+(char)e.KeyValue);
- base.OnKeyUp (e);
- }
- protected override void OnHandleCreated (EventArgs e)
- {
- results.Add ("OnHandleCreated");
- base.OnHandleCreated (e);
- }
- protected override void OnBindingContextChanged (EventArgs e)
- {
- results.Add ("OnBindingContextChanged");
- base.OnBindingContextChanged (e);
- }
- protected override void OnInvalidated (InvalidateEventArgs e)
- {
- results.Add("OnInvalidated");
- base.OnInvalidated (e);
- }
- protected override void OnResize (EventArgs e)
- {
- results.Add("OnResize");
- base.OnResize (e);
- }
- protected override void OnSizeChanged (EventArgs e)
- {
- results.Add("OnSizeChanged");
- base.OnSizeChanged (e);
- }
- protected override void OnLayout (LayoutEventArgs e)
- {
- results.Add("OnLayout");
- base.OnLayout (e);
- }
- protected override void OnVisibleChanged (EventArgs e)
- {
- results.Add("OnVisibleChanged");
- base.OnVisibleChanged (e);
- }
- protected override void OnPaint (PaintEventArgs e)
- {
- results.Add("OnPaint");
- base.OnPaint (e);
- }
- public void KeyPressA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYDOWN;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_CHAR;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x61;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_KEYUP;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)unchecked((int)0xC01e0001);
- this.WndProc(ref m);
- }
- public void KeyDownA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYDOWN;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_CHAR;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x61;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- }
- public void KeyUpA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYUP;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)unchecked((int)0xC01e0001);
- this.WndProc(ref m);
- }
- public ArrayList Results {
- get { return results; }
- }
- }
- [TestFixture]
- [Ignore("Comparisons too strict")]
- public class LabelTestEventsOrder
- {
- public string [] ArrayListToString (ArrayList arrlist)
- {
- string [] retval = new string [arrlist.Count];
- for (int i = 0; i < arrlist.Count; i++)
- retval[i] = (string)arrlist[i];
- return retval;
- }
- private void OrderedAssert(string[] wanted, ArrayList found) {
- int last_target;
- bool seen;
- last_target = 0;
- for (int i = 0; i < wanted.Length; i++) {
- seen = false;
- for (int j = last_target; j < found.Count; j++) {
- if (wanted[i] == (string)found[j]) {
- seen = true;
- last_target = j + 1;
- break;
- }
- }
- if (!seen) {
- Console.WriteLine("Needed {0}", wanted[i]);
- }
- }
- }
- public void PrintList(string name, ArrayList list) {
- Console.WriteLine("{0}", name);
- for (int i = 0; i < list.Count; i++) {
- Console.WriteLine(" {0}", list[i]);
- }
- Console.WriteLine("");
- }
- [Test]
- public void CreateEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void SizeChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnSizeChanged",
- "OnResize",
- "OnInvalidated",
- "OnLayout"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.Size = new Size (150, 20);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void AutoSizeChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnSizeChanged",
- "OnResize",
- "OnInvalidated",
- "OnLayout",
- "OnAutoSizeChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.AutoSize = true;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void BackgroundImageChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnBackgroundImageChanged",
- "OnInvalidated"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.BackgroundImage = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void ImeModeChangedChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnImeModeChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.ImeMode = ImeMode.Katakana;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void KeyPressEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnKeyDown,A",
- "OnKeyPress,a",
- "OnKeyUp,A"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.KeyPressA ();
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void TabStopChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.TabStop = true;
- PrintList("TabStopChanged", l.Results);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void TextAlignChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnInvalidated"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.TextAlign = ContentAlignment.TopRight;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void InvalidateEventsOrder ()
- {
- Rectangle rect = new Rectangle (new Point (0,0), new Size (2, 2));
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabelInvalidate l = new MyLabelInvalidate ();
- myform.Controls.Add (l);
- l.TextAlign = ContentAlignment.TopRight;
- string [] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnInvalidated,{X=0,Y=0,Width="+l.Size.Width+",Height="+l.Size.Height+"}",
- "OnInvalidated," + rect.ToString ()
- };
- l.Invalidate (rect);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void PaintEventsOrder ()
- {
- string[] EventsWanted = {
- "OnHandleCreated",
- "OnBindingContextChanged",
- "OnBindingContextChanged",
- "OnInvalidated",
- "OnInvalidated",
- "OnPaint"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel l = new MyLabel ();
- myform.Controls.Add (l);
- l.TextAlign = ContentAlignment.TopRight;
- l.Refresh ();
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- }
- public class MyLabel2 : Label
- {
- protected ArrayList results = new ArrayList ();
- public MyLabel2 () : base ()
- {
- this.AutoSizeChanged += new EventHandler (AutoSizeChanged_Handler);
- this.HandleCreated += new EventHandler (HandleCreated_Handler);
- this.BindingContextChanged += new EventHandler (BindingContextChanged_Handler);
- this.BackgroundImageChanged += new EventHandler (BackgroundImageChanged_Handler);
- this.ImeModeChanged += new EventHandler (ImeModeChanged_Handler);
- this.KeyDown += new KeyEventHandler (KeyDown_Handler);
- this.KeyPress += new KeyPressEventHandler (KeyPress_Handler);
- this.KeyUp += new KeyEventHandler (KeyUp_Handler);
- this.Invalidated += new InvalidateEventHandler (Invalidated_Handler);
- this.Resize += new EventHandler (Resize_Handler);
- this.SizeChanged += new EventHandler (SizeChanged_Handler);
- this.Layout += new LayoutEventHandler (Layout_Handler);
- this.VisibleChanged += new EventHandler (VisibleChanged_Handler);
- this.Paint += new PaintEventHandler (Paint_Handler);
- }
- protected void AutoSizeChanged_Handler (object sender, EventArgs e)
- {
- results.Add ("AutoSizeChanged");
- }
- protected void BackgroundImageChanged_Handler (object sender, EventArgs e)
- {
- results.Add ("BackgroundImageChanged");
- }
- protected void ImeModeChanged_Handler (object sender, EventArgs e)
- {
- results.Add ("ImeModeChanged");
- }
- protected void KeyDown_Handler (object sender, KeyEventArgs e)
- {
- results.Add ("KeyDown,"+(char)e.KeyValue);
- }
- protected void KeyPress_Handler (object sender, KeyPressEventArgs e)
- {
- results.Add ("KeyPress,"+e.KeyChar.ToString ());
- }
- protected void KeyUp_Handler (object sender, KeyEventArgs e)
- {
- results.Add ("KeyUp,"+(char)e.KeyValue);
- }
- protected void HandleCreated_Handler (object sender, EventArgs e)
- {
- results.Add ("HandleCreated");
- }
- protected void BindingContextChanged_Handler (object sender, EventArgs e)
- {
- results.Add ("BindingContextChanged");
- }
- protected void Invalidated_Handler (object sender, InvalidateEventArgs e)
- {
- results.Add("Invalidated");
- }
- protected void Resize_Handler (object sender, EventArgs e)
- {
- results.Add("Resize");
- }
- protected void SizeChanged_Handler (object sender, EventArgs e)
- {
- results.Add("SizeChanged");
- }
- protected void Layout_Handler (object sender, LayoutEventArgs e)
- {
- results.Add("Layout");
- }
- protected void VisibleChanged_Handler (object sender, EventArgs e)
- {
- results.Add("VisibleChanged");
- }
- protected void Paint_Handler (object sender, PaintEventArgs e)
- {
- results.Add("Paint");
- }
- public void KeyPressA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYDOWN;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_CHAR;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x61;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_KEYUP;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)unchecked((int)0xC01e0001);
- this.WndProc(ref m);
- }
- public void KeyDownA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYDOWN;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- m.Msg = (int)WndMsg.WM_CHAR;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x61;
- m.LParam = (IntPtr)0x1e0001;
- this.WndProc(ref m);
- }
- public void KeyUpA()
- {
- Message m;
- m = new Message();
- m.Msg = (int)WndMsg.WM_KEYUP;
- m.HWnd = this.Handle;
- m.WParam = (IntPtr)0x41;
- m.LParam = (IntPtr)unchecked((int)0xC01e0001);
- this.WndProc(ref m);
- }
- public ArrayList Results {
- get { return results; }
- }
- }
- [TestFixture]
- [Ignore("Comparisons too strict")]
- public class LabelTestEventsOrder2
- {
- public string [] ArrayListToString (ArrayList arrlist)
- {
- string [] retval = new string [arrlist.Count];
- for (int i = 0; i < arrlist.Count; i++)
- retval[i] = (string)arrlist[i];
- return retval;
- }
- [Test]
- public void CreateEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void SizeChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "Invalidated",
- "Layout",
- "Resize",
- "SizeChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.Size = new Size (150, 20);
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void AutoSizeChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "Invalidated",
- "Layout",
- "Resize",
- "SizeChanged",
- "AutoSizeChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.AutoSize = true;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void BackgroundImageChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "Invalidated",
- "BackgroundImageChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.BackgroundImage = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void ImeModeChangedChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "ImeModeChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.ImeMode = ImeMode.Katakana;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void KeyPressEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "KeyDown,A",
- "KeyPress,a",
- "KeyUp,A"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.KeyPressA ();
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void TabStopChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.TabStop = true;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void TextAlignChangedEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "Invalidated"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.TextAlign = ContentAlignment.TopRight;
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- [Test]
- public void PaintEventsOrder ()
- {
- string[] EventsWanted = {
- "HandleCreated",
- "BindingContextChanged",
- "BindingContextChanged",
- "Invalidated",
- "Invalidated",
- "Paint"
- };
- Form myform = new Form ();
- myform.ShowInTaskbar = false;
- myform.Visible = true;
- MyLabel2 l = new MyLabel2 ();
- myform.Controls.Add (l);
- l.TextAlign = ContentAlignment.TopRight;
- l.Refresh ();
- Assert.AreEqual (EventsWanted, ArrayListToString (l.Results));
- myform.Dispose();
- }
- }
- }
|