2 // Copyright (c) 2005 Novell, Inc.
5 // Ritvik Mayank (mritvik@novell.com)
9 using System.Windows.Forms;
11 using System.Reflection;
12 using NUnit.Framework;
14 namespace MonoTests.System.Windows.Forms
17 public class TextBoxBaseTest
20 public void TextBoxBasePropertyTest ()
22 TextBox tb = new TextBox ();
23 Assert.AreEqual (false, tb.AcceptsTab, "#1a");
26 SendKeys.SendWait ("^%");
27 Assert.AreEqual (true, tb.AcceptsTab, "#1b");
28 Assert.AreEqual (true, tb.AutoSize, "#2");
29 Assert.AreEqual ("Window", tb.BackColor.Name, "#3a");
30 tb.BackColor = Color.White;
31 Assert.AreEqual ("White", tb.BackColor.Name, "#3b");
32 Assert.AreEqual (null, tb.BackgroundImage, "#4a");
34 tb.BackgroundImage = Image.FromFile (gif);
35 // comparing image objects fails on MS .Net so using Size property
36 Assert.AreEqual (Image.FromFile(gif, true).Size, tb.BackgroundImage.Size, "#4b");
38 Assert.AreEqual (BorderStyle.Fixed3D, tb.BorderStyle, "#5");
39 Assert.AreEqual (false, tb.CanUndo, "#6a");
41 Assert.AreEqual (true, tb.CanUndo, "#6b");
43 Assert.AreEqual (false, tb.CanUndo, "#6c");
44 Assert.AreEqual ("WindowText", tb.ForeColor.Name, "#7");
45 Assert.AreEqual (true, tb.HideSelection, "#8");
46 Assert.AreEqual (1, tb.Lines.Length, "#9");
47 Assert.AreEqual (32767, tb.MaxLength, "#10");
48 Assert.AreEqual (true, tb.Modified, "#11");
49 Assert.AreEqual (true, tb.Multiline, "#12a");
51 Assert.AreEqual (true, tb.Multiline, "#12b");
52 tb.AcceptsReturn = true;
53 Assert.AreEqual (true, tb.Multiline, "#12c");
54 Assert.AreEqual (20, tb.PreferredHeight, "#13");
55 Assert.AreEqual (false, tb.ReadOnly, "#14");
56 Assert.AreEqual ("", tb.SelectedText, "#15");
57 tb.Text = "sample TextBox";
58 Assert.AreEqual (0, tb.SelectionLength, "#16b");
59 Assert.AreEqual (0, tb.SelectionStart, "#17");
61 tb.AcceptsReturn = true;
62 Assert.AreEqual ("sample TextBox", tb.Text, "#18");
63 Assert.AreEqual (14, tb.TextLength, "#19");
64 Assert.AreEqual (false, tb.WordWrap, "#20");
68 public void TextBoxPropertyTest ()
70 TextBox tb = new TextBox ();
71 Assert.AreEqual (false, tb.AcceptsReturn, "#21");
72 Assert.AreEqual (CharacterCasing.Normal, tb.CharacterCasing, "#22");
73 Assert.AreEqual ('\0', tb.PasswordChar, "#23");
74 tb.PasswordChar = '*';
75 Assert.AreEqual ('*', tb.PasswordChar, "#23b");
76 Assert.AreEqual (ScrollBars.None, tb.ScrollBars, "#24");
77 Assert.AreEqual (-1, tb.SelectionLength, "#25");
78 Assert.AreEqual (HorizontalAlignment.Left , tb.TextAlign, "#26");
82 public void AppendTextTest ()
86 TextBox tb1 = new TextBox ();
88 tb1.Text = "TextBox1";
89 TextBox tb2 = new TextBox ();
93 tb2.AppendText (tb1.Text);
94 Assert.AreEqual ("TextBox1", tb2.Text, "#27");
98 public void ClearTest ()
100 TextBox tb1 = new TextBox ();
101 tb1.Text = "TextBox1";
102 Assert.AreEqual ("TextBox1", tb1.Text, "#28a" );
104 Assert.AreEqual ("", tb1.Text, "#28b");
108 public void ClearUndoTest ()
110 TextBox tb1 = new TextBox ();
111 tb1.Text = "TextBox1";
112 tb1.SelectionLength = 4;
114 Assert.AreEqual ("Text", tb1.SelectedText, "#29a");
116 Assert.AreEqual (true, tb1.CanUndo, "#29b");
118 Assert.AreEqual (false, tb1.CanUndo, "#29c");
122 public void CopyTest ()
124 TextBox tb1 = new TextBox ();
126 tb1.SelectionLength = 4;
128 Assert.AreEqual ("ABCD", tb1.SelectedText, "#30");
132 public void CutTest ()
134 TextBox tb1 = new TextBox ();
136 tb1.SelectionLength = 4;
138 Assert.AreEqual ("E", tb1.Text, "#31");
142 public void PasteTest ()
144 TextBox tb1 = new TextBox ();
146 tb1.SelectionLength = 4;
147 tb1.SelectionStart = tb1.SelectionStart + tb1.SelectionLength;
149 Assert.AreEqual ("ABCDABCD", tb1.Text, "#32");
153 public void SelectTest ()
155 TextBox tb1 = new TextBox ();
156 tb1.Text = "This is a sample test.";
158 Assert.AreEqual ("This", tb1.SelectedText, "#33");
162 public void SelectAllTest ()
164 TextBox tb1 = new TextBox ();
165 tb1.Text = "This is a sample test.";
167 Assert.AreEqual ("This is a sample test.", tb1.SelectedText, "#34");
171 public void ToStringTest ()
173 TextBox tb1 = new TextBox ();
174 Assert.AreEqual ("System.Windows.Forms.TextBox, Text: ", tb1.ToString(), "#35");
178 public void UndoTest1 ()
180 TextBox tb1 = new TextBox ();
182 tb1.SelectionLength = 4;
184 tb1.SelectionStart = tb1.SelectionStart + tb1.SelectionLength;
187 Assert.AreEqual ("ABCDE", tb1.Text, "#36");