2 // ToolStripStatusLabelTests.cs
\r
4 // Permission is hereby granted, free of charge, to any person obtaining
\r
5 // a copy of this software and associated documentation files (the
\r
6 // "Software"), to deal in the Software without restriction, including
\r
7 // without limitation the rights to use, copy, modify, merge, publish,
\r
8 // distribute, sublicense, and/or sell copies of the Software, and to
\r
9 // permit persons to whom the Software is furnished to do so, subject to
\r
10 // the following conditions:
\r
12 // The above copyright notice and this permission notice shall be
\r
13 // included in all copies or substantial portions of the Software.
\r
15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
\r
16 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
\r
17 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
\r
18 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
\r
19 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
\r
20 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
\r
21 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\r
23 // Copyright (c) 2006 Jonathan Pobst
\r
26 // Jonathan Pobst (monkey@jpobst.com)
\r
30 using System.Collections.Generic;
\r
32 using NUnit.Framework;
\r
33 using System.Drawing;
\r
34 using System.Windows.Forms;
\r
36 namespace MonoTests.System.Windows.Forms
\r
39 public class ToolStripStatusLabelTests : TestHelper
\r
42 //public void Constructor ()
\r
44 // ToolStripLabel tsi = new ToolStripLabel ();
\r
46 // Assert.AreEqual (Color.Red, tsi.ActiveLinkColor, "A1");
\r
47 // Assert.AreEqual (false, tsi.CanSelect, "A2");
\r
48 // Assert.AreEqual (false, tsi.IsLink, "A3");
\r
49 // Assert.AreEqual (LinkBehavior.SystemDefault, tsi.LinkBehavior, "A4");
\r
50 // Assert.AreEqual (Color.FromArgb (0,0,255), tsi.LinkColor, "A5");
\r
51 // Assert.AreEqual (false, tsi.LinkVisited, "A6");
\r
52 // Assert.AreEqual (Color.FromArgb (128, 0, 128), tsi.VisitedLinkColor, "A7");
\r
55 // EventHandler oc = new EventHandler (delegate (object sender, EventArgs e) { count++; });
\r
56 // Image i = new Bitmap (1,1);
\r
58 // tsi = new ToolStripLabel (i);
\r
59 // tsi.PerformClick();
\r
60 // Assert.AreEqual (null, tsi.Text, "A8");
\r
61 // Assert.AreSame (i, tsi.Image, "A9");
\r
62 // Assert.AreEqual (false, tsi.IsLink, "A10");
\r
63 // Assert.AreEqual (0, count, "A11");
\r
64 // Assert.AreEqual (string.Empty, tsi.Name, "A12");
\r
66 // tsi = new ToolStripLabel ("Text");
\r
67 // tsi.PerformClick ();
\r
68 // Assert.AreEqual ("Text", tsi.Text, "A13");
\r
69 // Assert.AreSame (null, tsi.Image, "A14");
\r
70 // Assert.AreEqual (false, tsi.IsLink, "A15");
\r
71 // Assert.AreEqual (0, count, "A16");
\r
72 // Assert.AreEqual (string.Empty, tsi.Name, "A17");
\r
74 // tsi = new ToolStripLabel ("Text", i);
\r
75 // tsi.PerformClick ();
\r
76 // Assert.AreEqual ("Text", tsi.Text, "A18");
\r
77 // Assert.AreSame (i, tsi.Image, "A19");
\r
78 // Assert.AreEqual (false, tsi.IsLink, "A20");
\r
79 // Assert.AreEqual (0, count, "A21");
\r
80 // Assert.AreEqual (string.Empty, tsi.Name, "A22");
\r
82 // tsi = new ToolStripLabel ("Text", i, true);
\r
83 // tsi.PerformClick ();
\r
84 // Assert.AreEqual ("Text", tsi.Text, "A23");
\r
85 // Assert.AreSame (i, tsi.Image, "A24");
\r
86 // Assert.AreEqual (true, tsi.IsLink, "A25");
\r
87 // Assert.AreEqual (0, count, "A26");
\r
88 // Assert.AreEqual (string.Empty, tsi.Name, "A27");
\r
90 // tsi = new ToolStripLabel ("Text", i, true, oc);
\r
91 // tsi.PerformClick ();
\r
92 // Assert.AreEqual ("Text", tsi.Text, "A28");
\r
93 // Assert.AreSame (i, tsi.Image, "A29");
\r
94 // Assert.AreEqual (true, tsi.IsLink, "A30");
\r
95 // Assert.AreEqual (1, count, "A31");
\r
96 // Assert.AreEqual (string.Empty, tsi.Name, "A32");
\r
98 // tsi = new ToolStripLabel ("Text", i, true, oc, "Name");
\r
99 // tsi.PerformClick ();
\r
100 // Assert.AreEqual ("Text", tsi.Text, "A33");
\r
101 // Assert.AreSame (i, tsi.Image, "A34");
\r
102 // Assert.AreEqual (true, tsi.IsLink, "A35");
\r
103 // Assert.AreEqual (2, count, "A36");
\r
104 // Assert.AreEqual ("Name", tsi.Name, "A37");
\r
108 public void ProtectedProperties ()
\r
110 ExposeProtectedProperties epp = new ExposeProtectedProperties ();
\r
112 Assert.AreEqual (new Padding (0, 3, 0, 2), epp.DefaultMargin, "C3");
\r
116 //public void PropertyActiveLinkColor ()
\r
118 // ToolStripLabel tsi = new ToolStripLabel ();
\r
120 // tsi.ActiveLinkColor = Color.Green;
\r
121 // Assert.AreEqual (Color.Green, tsi.ActiveLinkColor, "B1");
\r
125 //public void PropertyIsLink ()
\r
127 // ToolStripLabel tsi = new ToolStripLabel ();
\r
129 // tsi.IsLink = true;
\r
130 // Assert.AreEqual (true, tsi.IsLink, "B1");
\r
134 //public void PropertyLinkBehavior ()
\r
136 // ToolStripLabel tsi = new ToolStripLabel ();
\r
138 // tsi.LinkBehavior = LinkBehavior.NeverUnderline;
\r
139 // Assert.AreEqual (LinkBehavior.NeverUnderline, tsi.LinkBehavior, "B1");
\r
143 //public void PropertyLinkColor ()
\r
145 // ToolStripLabel tsi = new ToolStripLabel ();
\r
147 // tsi.LinkColor = Color.Green;
\r
148 // Assert.AreEqual (Color.Green, tsi.LinkColor, "B1");
\r
152 //public void PropertyLinkVisited ()
\r
154 // ToolStripLabel tsi = new ToolStripLabel ();
\r
156 // tsi.LinkVisited = true;
\r
157 // Assert.AreEqual (true, tsi.LinkVisited, "B1");
\r
161 //public void PropertyVisitedLinkColor ()
\r
163 // ToolStripLabel tsi = new ToolStripLabel ();
\r
165 // tsi.VisitedLinkColor = Color.Green;
\r
166 // Assert.AreEqual (Color.Green, tsi.VisitedLinkColor, "B1");
\r
171 //public void PropertyAnchorAndDocking ()
\r
173 // ToolStripItem ts = new NullToolStripItem ();
\r
175 // ts.Anchor = AnchorStyles.Top | AnchorStyles.Bottom;
\r
177 // Assert.AreEqual (AnchorStyles.Top | AnchorStyles.Bottom, ts.Anchor, "A1");
\r
178 // Assert.AreEqual (DockStyle.None, ts.Dock, "A2");
\r
180 // ts.Anchor = AnchorStyles.Left | AnchorStyles.Right;
\r
182 // Assert.AreEqual (AnchorStyles.Left | AnchorStyles.Right, ts.Anchor, "A1");
\r
183 // Assert.AreEqual (DockStyle.None, ts.Dock, "A2");
\r
185 // ts.Dock = DockStyle.Left;
\r
187 // Assert.AreEqual (AnchorStyles.Top | AnchorStyles.Left, ts.Anchor, "A1");
\r
188 // Assert.AreEqual (DockStyle.Left, ts.Dock, "A2");
\r
190 // ts.Dock = DockStyle.None;
\r
192 // Assert.AreEqual (AnchorStyles.Top | AnchorStyles.Left, ts.Anchor, "A1");
\r
193 // Assert.AreEqual (DockStyle.None, ts.Dock, "A2");
\r
195 // ts.Dock = DockStyle.Top;
\r
197 // Assert.AreEqual (AnchorStyles.Top | AnchorStyles.Left, ts.Anchor, "A1");
\r
198 // Assert.AreEqual (DockStyle.Top, ts.Dock, "A2");
\r
201 private class ExposeProtectedProperties : ToolStripStatusLabel
\r
203 public new Padding DefaultMargin { get { return base.DefaultMargin; } }
\r