using System;\r
using System.ComponentModel;\r
using System.Drawing;\r
+using System.Globalization;\r
using System.Reflection;\r
using System.Windows.Forms;\r
using System.Collections;\r
+using Threading = System.Threading;\r
\r
using NUnit.Framework;\r
\r
namespace MonoTests.System.Windows.Forms\r
{\r
[TestFixture]\r
- public class NumericUpDownTest\r
+ public class NumericUpDownTest : TestHelper\r
{\r
[Test]\r
public void DefaultValues ()\r
Assert.AreEqual (10, numericUpDown1.Accelerations[3].Seconds, "#A4");\r
}\r
#endif\r
+ [Test]\r
+ public void Minimum ()\r
+ {\r
+ Form f = new Form ();\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.Value = 0;\r
+ nud.Minimum = 2;\r
+ nud.Maximum = 4;\r
+ f.Controls.Add (nud);\r
+ f.Show ();\r
+\r
+ Assert.AreEqual (2, nud.Value, "#A1");\r
+ nud.Minimum = 3;\r
+ Assert.AreEqual (3, nud.Value, "#A2");\r
+ f.Dispose ();\r
+ }\r
+\r
+ [Test]\r
+ public void Maximum ()\r
+ {\r
+ Form f = new Form ();\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.BeginInit ();\r
+ nud.Value = 1000;\r
+ nud.Minimum = 2;\r
+ nud.Maximum = 4;\r
+ nud.EndInit ();\r
+ f.Controls.Add (nud);\r
+ f.Show ();\r
+\r
+ Assert.AreEqual (4, nud.Value, "#A1");\r
+ nud.Maximum = 3;\r
+ Assert.AreEqual (3, nud.Value, "#A2");\r
+ f.Dispose ();\r
+ }\r
+\r
+ [Test]\r
+ public void Hexadecimal ()\r
+ {\r
+ Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo ("en-US");\r
+ Form f = new Form ();\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.Maximum = 100000;\r
+ f.Controls.Add (nud);\r
+ f.Show ();\r
+\r
+ nud.Value = 56789;\r
+ nud.Hexadecimal = true;\r
+ Assert.AreEqual ("DDD5", nud.Text, "#A1");\r
+ Assert.AreEqual (56789, nud.Value, "#A2");\r
+ f.Dispose ();\r
+ }\r
+\r
+ [Test]\r
+ public void ThousandsSeparator ()\r
+ {\r
+ Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo ("en-US");\r
+ Form f = new Form ();\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.Maximum = 100000;\r
+ f.Controls.Add (nud);\r
+ f.Show ();\r
+\r
+ nud.Value = 12345;\r
+ nud.ThousandsSeparator = true;\r
+ Assert.AreEqual ("12,345", nud.Text, "#A1");\r
+ Assert.AreEqual (12345, nud.Value, "#A2");\r
+ f.Dispose ();\r
+ }\r
+\r
+ [Test]\r
+ public void Height ()\r
+ {\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ Assert.AreEqual (20, nud.PreferredHeight, "#1");\r
+ nud.Height = 9999;\r
+ Assert.AreEqual (nud.PreferredHeight, nud.Height, "#2");\r
+ }\r
+\r
+ [Test]\r
+#if NET_2_0\r
+ [ExpectedException (typeof (ArgumentOutOfRangeException))]\r
+#else\r
+ [ExpectedException (typeof (ArgumentException))]\r
+#endif\r
+ public void SetValueThrowsException ()\r
+ {\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.Maximum = 3;\r
+ nud.Value = 4;\r
+ nud.Dispose ();\r
+ }\r
+\r
+ [Test]\r
+#if NET_2_0\r
+ [ExpectedException (typeof (ArgumentOutOfRangeException))]\r
+#else\r
+ [ExpectedException (typeof (ArgumentException))]\r
+#endif\r
+ public void InitTest ()\r
+ {\r
+ NumericUpDown nud = new NumericUpDown ();\r
+ nud.BeginInit ();\r
+ nud.Maximum = 3;\r
+ nud.BeginInit ();\r
+ nud.EndInit ();\r
+ nud.Value = 4;\r
+ nud.Dispose ();\r
+ }\r
}\r
}\r