2 // Copyright (c) 2005 Novell, Inc.
5 // Hisham Mardam Bey (hisham.mardambey@gmail.com)
11 using NUnit.Framework;
12 using System.Windows.Forms;
14 using System.Runtime.Remoting;
16 namespace MonoTests.System.Windows.Forms
19 [Ignore ("This is a work in progress.")]
20 public class LabelTest2
24 public void PubPropTest ()
26 Label l = new Label ();
29 Assert.AreEqual (false, l.AutoSize, "A1");
31 Assert.AreEqual (true, l.AutoSize, "A2");
33 Assert.AreEqual (false, l.AutoSize, "A3");
36 Assert.AreEqual (null, l.BackgroundImage, "B1");
37 l.BackgroundImage = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
38 Assert.IsNotNull (l.BackgroundImage, "B2");
39 Bitmap bmp = (Bitmap)l.BackgroundImage;
40 Assert.IsNotNull (bmp.GetPixel (0, 0), "B3");
42 Assert.AreEqual (BorderStyle.None, l.BorderStyle, "B4");
43 l.BorderStyle = BorderStyle.FixedSingle;
44 Assert.AreEqual (BorderStyle.FixedSingle, l.BorderStyle, "B5");
45 l.BorderStyle = BorderStyle.Fixed3D;
46 Assert.AreEqual (BorderStyle.Fixed3D, l.BorderStyle, "B6");
47 l.BorderStyle = BorderStyle.None;
48 Assert.AreEqual (BorderStyle.None, l.BorderStyle, "B7");
51 string name = l.CompanyName;
52 if (!name.Equals("Mono Project, Novell, Inc.") && !name.Equals("Microsoft Corporation")) {
53 Assert.Fail("CompanyName property does not match any accepted value - C1");
58 Assert.AreEqual (FlatStyle.Standard, l.FlatStyle, "F1");
59 l.FlatStyle = FlatStyle.Flat;
60 Assert.AreEqual (FlatStyle.Flat, l.FlatStyle, "F1");
61 l.FlatStyle = FlatStyle.Popup;
62 Assert.AreEqual (FlatStyle.Popup, l.FlatStyle, "F2");
63 l.FlatStyle = FlatStyle.Standard;
64 Assert.AreEqual (FlatStyle.Standard, l.FlatStyle, "F3");
65 l.FlatStyle = FlatStyle.System;
66 Assert.AreEqual (FlatStyle.System, l.FlatStyle, "F4");
69 Assert.AreEqual (ContentAlignment.MiddleCenter, l.ImageAlign, "I1");
70 l.ImageAlign = ContentAlignment.TopLeft;
71 Assert.AreEqual (ContentAlignment.TopLeft, l.ImageAlign, "I2");
72 l.ImageAlign = ContentAlignment.TopCenter;
73 Assert.AreEqual (ContentAlignment.TopCenter, l.ImageAlign, "I3");
74 l.ImageAlign = ContentAlignment.TopRight;
75 Assert.AreEqual (ContentAlignment.TopRight, l.ImageAlign, "I4");
76 l.ImageAlign = ContentAlignment.MiddleLeft;
77 Assert.AreEqual (ContentAlignment.MiddleLeft, l.ImageAlign, "I5");
78 l.ImageAlign = ContentAlignment.MiddleCenter;
79 Assert.AreEqual (ContentAlignment.MiddleCenter, l.ImageAlign, "I6");
80 l.ImageAlign = ContentAlignment.MiddleRight;
81 Assert.AreEqual (ContentAlignment.MiddleRight, l.ImageAlign, "I7");
82 l.ImageAlign = ContentAlignment.BottomLeft;
83 Assert.AreEqual (ContentAlignment.BottomLeft, l.ImageAlign, "I8");
84 l.ImageAlign = ContentAlignment.BottomCenter;
85 Assert.AreEqual (ContentAlignment.BottomCenter, l.ImageAlign, "I9");
86 l.ImageAlign = ContentAlignment.BottomRight;
87 Assert.AreEqual (ContentAlignment.BottomRight, l.ImageAlign, "I10");
88 Assert.AreEqual (-1, l.ImageIndex, "I11");
89 Assert.AreEqual (null, l.ImageList, "I12");
90 Assert.AreEqual (null, l.Image, "I13");
91 l.Image = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
92 Assert.IsNotNull (l.Image, "I14");
93 bmp = (Bitmap)l.Image;
94 Assert.IsNotNull (bmp.GetPixel (0, 0), "I15");
97 ImageList il = new ImageList ();
98 il.ColorDepth = ColorDepth.Depth32Bit;
99 il.ImageSize = new Size (15, 15);
100 il.Images.Add (Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png"));
104 Assert.AreEqual (0, l.ImageIndex, "I16");
105 Assert.IsNotNull (l.ImageList, "I17");
112 // Assert.AreEqual (false, l.TabStop, "T1");
113 Assert.AreEqual (ContentAlignment.TopLeft, l.TextAlign, "T2");
116 Assert.AreEqual (true, l.UseMnemonic, "U1");
117 l.UseMnemonic = false;
118 Assert.AreEqual (false, l.UseMnemonic, "U2");
123 public void LabelEqualsTest ()
125 Label s1 = new Label ();
126 Label s2 = new Label ();
129 Assert.AreEqual (false, s1.Equals (s2), "E1");
130 Assert.AreEqual (true, s1.Equals (s1), "E2");
134 public void LabelScaleTest ()
136 Label r1 = new Label ();
140 Assert.AreEqual (80, r1.Width, "W1");
141 Assert.AreEqual (40, r1.Height, "H1");
145 public void PubMethodTest ()
147 Label l = new Label ();
151 Assert.AreEqual ("System.Windows.Forms.LabelText: My Label", l.ToString (), "T1");
157 public class LabelEventTest
159 static bool eventhandled = false;
160 public void Label_EventHandler (object sender,EventArgs e)
166 public void AutoSizeChangedChangedTest ()
168 Form myform = new Form ();
169 myform.Visible = true;
170 Label l = new Label ();
172 myform.Controls.Add (l);
173 l.AutoSizeChanged += new EventHandler (Label_EventHandler);
175 Assert.AreEqual (true, eventhandled, "B4");
176 eventhandled = false;
180 public void BackgroundImageChangedTest ()
182 Form myform = new Form ();
183 myform.Visible = true;
184 Label l = new Label ();
186 myform.Controls.Add (l);
187 l.BackgroundImageChanged += new EventHandler (Label_EventHandler);
188 l.BackgroundImage = Image.FromFile ("Test/System.Windows.Forms/bitmaps/a.png");
189 Assert.AreEqual (true, eventhandled, "B4");
190 eventhandled = false;
194 public void ImeModeChangedTest ()
196 Form myform = new Form ();
197 myform.Visible = true;
198 Label l = new Label ();
200 myform.Controls.Add (l);
201 l.ImeModeChanged += new EventHandler (Label_EventHandler);
202 l.ImeMode = ImeMode.Katakana;
203 Assert.AreEqual (true, eventhandled, "I16");
204 eventhandled = false;
207 [Test, Ignore ("This isnt complete.")]
208 public void KeyDownTest ()
210 Form myform = new Form ();
211 myform.Visible = true;
212 Label l = new Label ();
214 myform.Controls.Add (l);
215 l.KeyDown += new KeyEventHandler (Label_EventHandler);
217 //Assert.AreEqual (true, eventhandled, "K1");
218 eventhandled = false;
222 [Test, Ignore ("This is failing.")]
223 public void TabStopChangedTest ()
225 Form myform = new Form ();
226 myform.Visible = true;
227 Label l = new Label ();
229 myform.Controls.Add (l);
230 l.TabStopChanged += new EventHandler (Label_EventHandler);
232 Assert.AreEqual (true, eventhandled, "T3");
233 eventhandled = false;
237 public void TextAlignChangedTest ()
239 Form myform = new Form ();
240 myform.Visible = true;
241 Label l = new Label ();
243 myform.Controls.Add (l);
244 l.TextAlignChanged += new EventHandler (Label_EventHandler);
245 l.TextAlign = ContentAlignment.TopRight;
246 Assert.AreEqual (true, eventhandled, "T4");
247 eventhandled = false;