2007-03-28 Igor Zelmanovich <igorz@mainsoft.com>
[mono.git] / mcs / class / Managed.Windows.Forms / Test / System.Windows.Forms / ErrorProviderTest.cs
1 //
2 // ErrorProviderTest.cs: Test cases for ErrorProvider.
3 //
4 // Author:
5 //   Ritvik Mayank (mritvik@novell.com)
6 //
7 // (C) 2005 Novell, Inc. (http://www.novell.com)
8 //
9
10 using System;
11 using NUnit.Framework;
12 using System.Windows.Forms;
13 using System.Drawing;
14 using System.Data;
15 using System.Runtime.Remoting;
16
17 namespace MonoTests.System.Windows.Forms
18 {
19         [TestFixture]
20         public class ErrorProviderTest 
21         {
22                 [Test]
23                 public void ErrorProviderPropertyTest ()
24                 {
25                         ErrorProvider myErrorProvider = new ErrorProvider ();
26
27                         // B
28                         Assert.AreEqual (250, myErrorProvider.BlinkRate, "#B1");
29                         Assert.AreEqual (ErrorBlinkStyle.BlinkIfDifferentError, myErrorProvider.BlinkStyle, "#B2");
30
31                         // C
32                         Assert.AreEqual (null, myErrorProvider.ContainerControl, "#C1");
33
34                         // D 
35                         Assert.AreEqual (null, myErrorProvider.DataMember, "#D1");
36                         Assert.AreEqual (null, myErrorProvider.DataSource, "#D2");
37
38                         // I 
39                         Assert.AreEqual (16, myErrorProvider.Icon.Height, "#I1");
40                         Assert.AreEqual (16, myErrorProvider.Icon.Width, "#I2");
41
42                         // S
43                         Assert.AreEqual (null, myErrorProvider.Site, "#S1");
44                 }
45
46                 [Test]
47                 public void BindToDateAndErrorsTest ()
48                 {
49                         ErrorProvider myErrorProvider = new ErrorProvider ();
50                         DataSet myDataSet= new DataSet();
51                         myErrorProvider.DataSource = myDataSet;
52                         myErrorProvider.DataMember = "Customers";
53                         Assert.AreEqual (myDataSet, myErrorProvider.DataSource, "#Bind1");
54                         Assert.AreEqual ("Customers", myErrorProvider.DataMember, "#Bind2");
55                 }
56
57                 [Test]
58                 public void CanExtendTest ()
59                 {
60                         Control myControl = new Control ();
61                         Form myForm = new Form ();
62                         myForm.ShowInTaskbar = false;
63                         ToolBar myToolBar = new ToolBar ();
64                         ErrorProvider myErrorProvider = new ErrorProvider ();
65                         Assert.AreEqual (myErrorProvider.CanExtend (myControl), true, "#ext1");
66                         Assert.AreEqual (myErrorProvider.CanExtend (myToolBar), false, "#ext2");
67                         Assert.AreEqual (myErrorProvider.CanExtend (myForm), false, "#ext3");
68                         myForm.Dispose ();
69                 }
70
71                 [Test]
72                 public void GetandSetErrorTest ()
73                 {
74                         Form myForm = new Form ();
75                         myForm.ShowInTaskbar = false;
76                         Label label1 = new Label ();
77                         Label label2 = new Label ();
78                         ErrorProvider myErrorProvider = new ErrorProvider ();
79                         Assert.AreEqual (string.Empty, myErrorProvider.GetError (label1), "#1");
80                         myErrorProvider.SetError (label1, "ErrorMsg1");
81                         Assert.AreEqual ("ErrorMsg1", myErrorProvider.GetError (label1), "#2");
82                         Assert.AreEqual (string.Empty, myErrorProvider.GetError (label2), "#3");
83                         myErrorProvider.SetError (label2, "ErrorMsg2");
84                         Assert.AreEqual ("ErrorMsg2", myErrorProvider.GetError (label2), "#4");
85                         myErrorProvider.SetError (label2, null);
86                         Assert.AreEqual ("ErrorMsg1", myErrorProvider.GetError (label1), "#5");
87                         Assert.AreEqual (string.Empty, myErrorProvider.GetError (label2), "#6");
88                         myForm.Dispose ();
89                 }
90
91                 [Test]
92                 public void GetandSetIconAlignmentTest ()
93                 {
94                         TextBox myTextBox = new TextBox ();
95                         ErrorProvider myErrorProvider = new ErrorProvider ();
96                         myErrorProvider.SetIconAlignment (myTextBox, ErrorIconAlignment.MiddleRight);
97                         Assert.AreEqual (ErrorIconAlignment.MiddleRight, myErrorProvider.GetIconAlignment (myTextBox), "#getset2");
98                 }
99
100                 [Test]
101                 public void GetandSetIconPaddingTest ()
102                 {
103                         Form myForm = new Form ();
104                         myForm.ShowInTaskbar = false;
105                         ErrorProvider myErrorProvider = new ErrorProvider ();
106                         myErrorProvider.SetIconPadding (myForm, 2);
107                         Assert.AreEqual (2, myErrorProvider.GetIconPadding (myForm), "#getset3");
108                         myForm.Dispose ();
109                 }
110
111 #if NET_2_0
112                 [Test]
113                 public void ErrorProviderPropertyTag ()
114                 {
115                         ErrorProvider md = new ErrorProvider ();
116                         object s = "MyString";
117
118                         Assert.AreEqual (null, md.Tag, "A1");
119
120                         md.Tag = s;
121                         Assert.AreSame (s, md.Tag, "A2");
122                 }
123 #endif
124         }
125 }