TextBoxTest.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. //
  2. // Copyright (c) 2005 Novell, Inc.
  3. //
  4. // Authors:
  5. // Ritvik Mayank ([email protected])
  6. //
  7. using System;
  8. using System.Windows.Forms;
  9. using System.Drawing;
  10. using System.Reflection;
  11. using NUnit.Framework;
  12. namespace MonoTests.System.Windows.Forms
  13. {
  14. [TestFixture]
  15. public class TextBoxBaseTest
  16. {
  17. [Test]
  18. public void TextBoxBasePropertyTest ()
  19. {
  20. TextBox tb = new TextBox ();
  21. Assert.AreEqual (false, tb.AcceptsTab, "#1a");
  22. tb.Multiline = true;
  23. tb.AcceptsTab = true;
  24. SendKeys.SendWait ("^%");
  25. Assert.AreEqual (true, tb.AcceptsTab, "#1b");
  26. Assert.AreEqual (true, tb.AutoSize, "#2");
  27. Assert.AreEqual ("Window", tb.BackColor.Name, "#3a");
  28. tb.BackColor = Color.White;
  29. Assert.AreEqual ("White", tb.BackColor.Name, "#3b");
  30. Assert.AreEqual (null, tb.BackgroundImage, "#4a");
  31. string gif = "M.gif";
  32. tb.BackgroundImage = Image.FromFile (gif);
  33. // comparing image objects fails on MS .Net so using Size property
  34. Assert.AreEqual (Image.FromFile(gif, true).Size, tb.BackgroundImage.Size, "#4b");
  35. Assert.AreEqual (BorderStyle.Fixed3D, tb.BorderStyle, "#5");
  36. Assert.AreEqual (false, tb.CanUndo, "#6a");
  37. tb.Paste ();
  38. Assert.AreEqual (true, tb.CanUndo, "#6b");
  39. tb.ClearUndo ();
  40. Assert.AreEqual (false, tb.CanUndo, "#6c");
  41. Assert.AreEqual ("WindowText", tb.ForeColor.Name, "#7");
  42. Assert.AreEqual (true, tb.HideSelection, "#8");
  43. Assert.AreEqual (1, tb.Lines.Length, "#9");
  44. Assert.AreEqual (32767, tb.MaxLength, "#10");
  45. Assert.AreEqual (true, tb.Modified, "#11");
  46. Assert.AreEqual (true, tb.Multiline, "#12a");
  47. tb.WordWrap = false;
  48. Assert.AreEqual (true, tb.Multiline, "#12b");
  49. tb.AcceptsReturn = true;
  50. Assert.AreEqual (true, tb.Multiline, "#12c");
  51. Assert.AreEqual (20, tb.PreferredHeight, "#13");
  52. Assert.AreEqual (false, tb.ReadOnly, "#14");
  53. Assert.AreEqual ("", tb.SelectedText, "#15");
  54. tb.Text = "sample TextBox";
  55. Assert.AreEqual (0, tb.SelectionLength, "#16b");
  56. Assert.AreEqual (0, tb.SelectionStart, "#17");
  57. tb.WordWrap = false;
  58. tb.AcceptsReturn = true;
  59. Assert.AreEqual ("sample TextBox", tb.Text, "#18");
  60. Assert.AreEqual (14, tb.TextLength, "#19");
  61. Assert.AreEqual (false, tb.WordWrap, "#20");
  62. }
  63. [Test]
  64. public void TextBoxPropertyTest ()
  65. {
  66. TextBox tb = new TextBox ();
  67. Assert.AreEqual (false, tb.AcceptsReturn, "#21");
  68. Assert.AreEqual (CharacterCasing.Normal, tb.CharacterCasing, "#22");
  69. Assert.AreEqual ('\0', tb.PasswordChar, "#23");
  70. tb.PasswordChar = '*';
  71. Assert.AreEqual ('*', tb.PasswordChar, "#23b");
  72. Assert.AreEqual (ScrollBars.None, tb.ScrollBars, "#24");
  73. Assert.AreEqual (-1, tb.SelectionLength, "#25");
  74. Assert.AreEqual (HorizontalAlignment.Left , tb.TextAlign, "#26");
  75. }
  76. [Test]
  77. public void AppendTextTest ()
  78. {
  79. Form f = new Form ();
  80. f.Visible = true;
  81. TextBox tb1 = new TextBox ();
  82. tb1.Visible = true;
  83. tb1.Text = "TextBox1";
  84. TextBox tb2 = new TextBox ();
  85. tb2.Visible = true;
  86. f.Controls.Add (tb1);
  87. f.Controls.Add (tb2);
  88. tb2.AppendText (tb1.Text);
  89. Assert.AreEqual ("TextBox1", tb2.Text, "#27");
  90. }
  91. [Test]
  92. public void ClearTest ()
  93. {
  94. TextBox tb1 = new TextBox ();
  95. tb1.Text = "TextBox1";
  96. Assert.AreEqual ("TextBox1", tb1.Text, "#28a" );
  97. tb1.Clear ();
  98. Assert.AreEqual ("", tb1.Text, "#28b");
  99. }
  100. [Test]
  101. public void ClearUndoTest ()
  102. {
  103. TextBox tb1 = new TextBox ();
  104. tb1.Text = "TextBox1";
  105. tb1.SelectionLength = 4;
  106. tb1.Copy ();
  107. Assert.AreEqual ("Text", tb1.SelectedText, "#29a");
  108. tb1.Paste ();
  109. Assert.AreEqual (true, tb1.CanUndo, "#29b");
  110. tb1.ClearUndo ();
  111. Assert.AreEqual (false, tb1.CanUndo, "#29c");
  112. }
  113. [Test]
  114. public void CopyTest ()
  115. {
  116. TextBox tb1 = new TextBox ();
  117. tb1.Text = "ABCDE";
  118. tb1.SelectionLength = 4;
  119. tb1.Copy ();
  120. Assert.AreEqual ("ABCD", tb1.SelectedText, "#30");
  121. }
  122. [Test]
  123. public void CutTest ()
  124. {
  125. TextBox tb1 = new TextBox ();
  126. tb1.Text = "ABCDE";
  127. tb1.SelectionLength = 4;
  128. tb1.Cut ();
  129. Assert.AreEqual ("E", tb1.Text, "#31");
  130. }
  131. [Test]
  132. public void PasteTest ()
  133. {
  134. TextBox tb1 = new TextBox ();
  135. tb1.Text = "ABCDE";
  136. tb1.SelectionLength = 4;
  137. tb1.SelectionStart = tb1.SelectionStart + tb1.SelectionLength;
  138. tb1.Paste ();
  139. Assert.AreEqual ("ABCDABCD", tb1.Text, "#32");
  140. }
  141. [Test]
  142. public void SelectTest ()
  143. {
  144. TextBox tb1 = new TextBox ();
  145. tb1.Text = "This is a sample test.";
  146. tb1.Select (0, 4);
  147. Assert.AreEqual ("This", tb1.SelectedText, "#33");
  148. }
  149. [Test]
  150. public void SelectAllTest ()
  151. {
  152. TextBox tb1 = new TextBox ();
  153. tb1.Text = "This is a sample test.";
  154. tb1.SelectAll ();
  155. Assert.AreEqual ("This is a sample test.", tb1.SelectedText, "#34");
  156. }
  157. [Test]
  158. public void ToStringTest ()
  159. {
  160. TextBox tb1 = new TextBox ();
  161. Assert.AreEqual ("System.Windows.Forms.TextBox, Text: ", tb1.ToString(), "#35");
  162. }
  163. [Test]
  164. public void UndoTest1 ()
  165. {
  166. TextBox tb1 = new TextBox ();
  167. tb1.Text = "ABCDE";
  168. tb1.SelectionLength = 4;
  169. tb1.Copy ();
  170. tb1.SelectionStart = tb1.SelectionStart + tb1.SelectionLength;
  171. tb1.Paste ();
  172. tb1.Undo ();
  173. Assert.AreEqual ("ABCDE", tb1.Text, "#36");
  174. }
  175. }
  176. }