Inheritance: NumericUpDown
示例#1
0
        public void NumericUpDown_Value()
        {
            // obtain Value when UserEdit is false
            NumericNew nud = new NumericNew();

            nud.TextChanged  += new EventHandler(NumericUpDown_TextChanged);
            nud.ValueChanged += new EventHandler(NumericUpDown_ValueChanged);
            Assert.AreEqual(2, nud.CallStack.Count, "#A1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [0], "#A2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [1], "#A3");
            Assert.AreEqual(0, nud.Value, "#A4");
            Assert.AreEqual(2, nud.CallStack.Count, "#A5");
            Assert.AreEqual(0, value_changed, "#A6");
            Assert.AreEqual(0, text_changed, "#A7");

            // obtain Value when UserEdit is true
            nud.user_edit = true;
            Assert.AreEqual(2, nud.CallStack.Count, "#B1");
            Assert.AreEqual(0, nud.Value, "#B2");
            Assert.AreEqual(4, nud.CallStack.Count, "#B3");
            Assert.AreEqual("ValidateEditText", nud.CallStack [2], "#B4");
            Assert.AreEqual("UpdateEditText", nud.CallStack [3], "#B5");
            Assert.AreEqual(0, value_changed, "#B6");
            Assert.AreEqual(0, text_changed, "#B7");

            // modify Value when UserEdit is false
            nud.user_edit = false;
            nud.Value     = 10;
            Assert.AreEqual(5, nud.CallStack.Count, "#C1");
            Assert.AreEqual("UpdateEditText", nud.CallStack [4], "#C2");
            Assert.AreEqual(1, value_changed, "#C3");
            Assert.AreEqual(1, text_changed, "#C4");
            Assert.AreEqual(10, nud.Value, "#C5");
            Assert.AreEqual(5, nud.CallStack.Count, "#C6");
            Assert.AreEqual(1, value_changed, "#C7");
            Assert.AreEqual(1, text_changed, "#C8");

            // setting same Value
            nud.Value = 10;
            Assert.AreEqual(5, nud.CallStack.Count, "#D1");
            Assert.AreEqual(1, value_changed, "#D2");
            Assert.AreEqual(10, nud.Value, "#D3");
            Assert.AreEqual(5, nud.CallStack.Count, "#D4");
            Assert.AreEqual(1, value_changed, "#D5");
            Assert.AreEqual(1, text_changed, "#D6");

            // modify Value when UserEdit is true
            nud.user_edit = true;
            nud.Value     = 20;
            Assert.AreEqual(7, nud.CallStack.Count, "#E1");
            Assert.AreEqual("UpdateEditText", nud.CallStack [5], "#E2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [6], "#E3");
            Assert.AreEqual(3, value_changed, "#E4");
            Assert.AreEqual(1, text_changed, "#E5");
            nud.user_edit = false;             // reset UserEdit to avoid Value being parsed from Text
            Assert.AreEqual(10, nud.Value, "#E6");
            Assert.AreEqual(7, nud.CallStack.Count, "#E7");
            Assert.AreEqual(3, value_changed, "#E8");
            Assert.AreEqual(1, text_changed, "#E9");
        }
示例#2
0
        public void NumericUpDown_Value_Invalid()
        {
            NumericNew nud = new NumericNew();

            try {
                nud.Value = 1000;
                Assert.Fail("#A1");
            } catch (ArgumentOutOfRangeException ex) {
                Assert.AreEqual(typeof(ArgumentOutOfRangeException), ex.GetType(), "#A2");
                Assert.IsNotNull(ex.Message, "#A3");
                Assert.IsNotNull(ex.ParamName, "#A4");
                Assert.AreEqual("Value", ex.ParamName, "#A5");
                Assert.IsNull(ex.InnerException, "#A6");
            }

            try {
                nud.Value = 1000;
                Assert.Fail("#B1");
            } catch (ArgumentOutOfRangeException ex) {
                Assert.AreEqual(typeof(ArgumentOutOfRangeException), ex.GetType(), "#B2");
                Assert.IsNotNull(ex.Message, "#B3");
                Assert.IsNotNull(ex.ParamName, "#B4");
                Assert.AreEqual("Value", ex.ParamName, "#B5");
                Assert.IsNull(ex.InnerException, "#B6");
            }

            try {
                nud.Value = -1000;
                Assert.Fail("#C1");
            } catch (ArgumentOutOfRangeException ex) {
                Assert.AreEqual(typeof(ArgumentOutOfRangeException), ex.GetType(), "#C2");
                Assert.IsNotNull(ex.Message, "#C3");
                Assert.IsNotNull(ex.ParamName, "#C4");
                Assert.AreEqual("Value", ex.ParamName, "#C5");
                Assert.IsNull(ex.InnerException, "#C6");
            }

            nud.BeginInit();

            nud.Value = 1000;
            Assert.AreEqual(1000, nud.Value, "#D1");
            nud.Value = 1000;
            Assert.AreEqual(1000, nud.Value, "#D2");
            nud.Value = -1000;
            Assert.AreEqual(-1000, nud.Value, "#D3");
            nud.EndInit();
            try {
                nud.Value = -1000;
                Assert.Fail("#E1");
            } catch (ArgumentOutOfRangeException ex) {
                Assert.AreEqual(typeof(ArgumentOutOfRangeException), ex.GetType(), "#E2");
                Assert.IsNotNull(ex.Message, "#E3");
                Assert.IsNotNull(ex.ParamName, "#E4");
                Assert.AreEqual("Value", ex.ParamName, "#E5");
                Assert.IsNull(ex.InnerException, "#E6");
            }
        }
示例#3
0
        public void NumericUpDown_BeginInit()
        {
            NumericNew nud = new NumericNew();

            nud.TextChanged  += new EventHandler(NumericUpDown_TextChanged);
            nud.ValueChanged += new EventHandler(NumericUpDown_ValueChanged);
            Assert.AreEqual(2, nud.CallStack.Count, "#A1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [0], "#A2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [1], "#A3");
            Assert.AreEqual(0, nud.Value, "#A4");
            Assert.AreEqual(2, nud.CallStack.Count, "#A5");
            Assert.AreEqual(0, value_changed, "#A6");
            Assert.AreEqual(0, text_changed, "#A7");

            nud.BeginInit();
            Assert.AreEqual(2, nud.CallStack.Count, "#B1");
            nud.Value = 10;
            Assert.AreEqual(3, nud.CallStack.Count, "#B2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [2], "#B3");
            Assert.AreEqual("0", nud.Text, "#B4");
            Assert.AreEqual(10, nud.Value, "#B5");
            Assert.AreEqual(3, nud.CallStack.Count, "#B6");
            Assert.AreEqual(1, value_changed, "#B7");
            Assert.AreEqual(0, text_changed, "#B8");
            nud.EndInit();
            Assert.AreEqual(4, nud.CallStack.Count, "#B9");
            Assert.AreEqual("UpdateEditText", nud.CallStack [3], "#B10");
            Assert.AreEqual(1, text_changed, "#B11");
            Assert.AreEqual("10", nud.Text, "#B12");
            Assert.AreEqual(10, nud.Value, "#B13");
            Assert.AreEqual(4, nud.CallStack.Count, "#B14");
            Assert.AreEqual(1, value_changed, "#B15");
            Assert.AreEqual(1, text_changed, "#B16");

            // multiple calls to BeginInit are undone by a single EndInit call
            nud.BeginInit();
            nud.BeginInit();
            Assert.AreEqual(4, nud.CallStack.Count, "#C1");
            nud.Value = 20;
            Assert.AreEqual(5, nud.CallStack.Count, "#C2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [4], "#C3");
            Assert.AreEqual("10", nud.Text, "#C4");
            Assert.AreEqual(20, nud.Value, "#C5");
            Assert.AreEqual(5, nud.CallStack.Count, "#C6");
            Assert.AreEqual(2, value_changed, "#C7");
            Assert.AreEqual(1, text_changed, "#C8");
            nud.EndInit();
            Assert.AreEqual(6, nud.CallStack.Count, "#C9");
            Assert.AreEqual("UpdateEditText", nud.CallStack [5], "#C10");
            Assert.AreEqual(2, text_changed, "#C11");
            Assert.AreEqual("20", nud.Text, "#C12");
            Assert.AreEqual(20, nud.Value, "#C13");
            Assert.AreEqual(6, nud.CallStack.Count, "#C14");
            Assert.AreEqual(2, value_changed, "#C15");
            Assert.AreEqual(2, text_changed, "#C16");
        }
示例#4
0
        public void NumericUpDown_Value_Invalid()
        {
            NumericNew nud = new NumericNew();

            try {
                nud.Value = 1000;
                Assert.Fail("#A1");
#if NET_2_0
            } catch (ArgumentOutOfRangeException ex) {
                Assert.AreEqual(typeof(ArgumentOutOfRangeException), ex.GetType(), "#A2");
                Assert.IsNotNull(ex.Message, "#A3");
                Assert.IsNotNull(ex.ParamName, "#A4");
                Assert.AreEqual("Value", ex.ParamName, "#A5");
                Assert.IsNull(ex.InnerException, "#A6");
            }
#else
            } catch (ArgumentException ex) {
示例#5
0
        public void NumericUpDown_EndInit()
        {
            NumericNew nud = new NumericNew();

            nud.TextChanged  += new EventHandler(NumericUpDown_TextChanged);
            nud.ValueChanged += new EventHandler(NumericUpDown_ValueChanged);
            Assert.AreEqual(2, nud.CallStack.Count, "#A1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [0], "#A2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [1], "#A3");
            Assert.AreEqual(0, nud.Value, "#A4");
            Assert.AreEqual(2, nud.CallStack.Count, "#A5");
            Assert.AreEqual(0, value_changed, "#A6");
            Assert.AreEqual(0, text_changed, "#A7");

            // EndInit without corresponding BeginInit
            nud.EndInit();
            Assert.AreEqual(3, nud.CallStack.Count, "#B1");
            Assert.AreEqual("UpdateEditText", nud.CallStack [1], "#B2");
            Assert.AreEqual(0, nud.Value, "#B3");
            Assert.AreEqual(3, nud.CallStack.Count, "#B4");
            Assert.AreEqual(0, value_changed, "#B5");
            Assert.AreEqual(0, text_changed, "#B6");
        }
示例#6
0
        public void NumericUpDown_ChangingText()
        {
            NumericNew nud = new NumericNew();

            nud.TextChanged  += new EventHandler(NumericUpDown_TextChanged);
            nud.ValueChanged += new EventHandler(NumericUpDown_ValueChanged);
            Assert.IsFalse(nud.changing_text, "#A1");
            Assert.IsFalse(nud.user_edit, "#A2");
            Assert.AreEqual(0, text_changed, "#A3");

            nud.Text = "1";
            Assert.IsFalse(nud.changing_text, "#B1");
            Assert.IsFalse(nud.user_edit, "#B2");
            Assert.AreEqual(5, nud.CallStack.Count, "#B3");
            Assert.AreEqual(1, text_changed, "#B4");

            nud.changing_text = true;
            nud.Text          = "2";
            Assert.IsFalse(nud.changing_text, "#C1");
            Assert.IsFalse(nud.user_edit, "#C2");
            Assert.AreEqual(5, nud.CallStack.Count, "#C3");
            Assert.AreEqual(2, text_changed, "#C4");
        }
示例#7
0
        public void NumericUpDownEditValidateTest()
        {
            NumericNew nn = new NumericNew();

            Assert.IsTrue(nn.update_edit_text_called, "#17");

            Assert.IsFalse(nn.user_edit, "#18");

            nn.Reset();
            nn.user_edit = true;
            nn.Text      = "10";
            Assert.IsTrue(nn.validate_edit_text_called, "#19");
            Assert.IsTrue(nn.update_edit_text_called, "#20");

            nn.Reset();
            nn.user_edit = false;
            nn.Text      = "11";
            Assert.IsTrue(nn.validate_edit_text_called, "#21");
            Assert.IsTrue(nn.update_edit_text_called, "#22");

            nn.DownButton();
            Assert.AreEqual(10, nn.Value, "#23");
        }
示例#8
0
        public void NumericUpDown_UpButton()
        {
            NumericNew nud = new NumericNew();

            nud.TextChanged  += new EventHandler(NumericUpDown_TextChanged);
            nud.ValueChanged += new EventHandler(NumericUpDown_ValueChanged);
            nud.UpButton();
            Assert.AreEqual(3, nud.CallStack.Count, "#A1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [0], "#A2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [1], "#A3");
            Assert.AreEqual("UpdateEditText", nud.CallStack [2], "#A4");
            Assert.AreEqual(1, value_changed, "#A5");
            Assert.AreEqual(1, nud.Value, "#A6");
            Assert.AreEqual(3, nud.CallStack.Count, "#A7");
            Assert.AreEqual(1, value_changed, "#A8");
            Assert.AreEqual(1, text_changed, "#A9");

            nud.Text = "5";
            nud.UpButton();
            Assert.AreEqual(7, nud.CallStack.Count, "#B1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [3], "#B2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [4], "#B3");
            Assert.AreEqual("UpdateEditText", nud.CallStack [5], "#B4");
            Assert.AreEqual("UpdateEditText", nud.CallStack [6], "#B5");
            Assert.AreEqual(3, value_changed, "#B6");
            Assert.AreEqual(6, nud.Value, "#B7");
            Assert.AreEqual("6", nud.Text, "#B8");
            Assert.AreEqual(7, nud.CallStack.Count, "#B9");
            Assert.AreEqual(3, value_changed, "#B10");
            Assert.AreEqual(3, text_changed, "#B11");

            nud.Text      = "7";
            nud.user_edit = true;
            nud.UpButton();
            Assert.AreEqual(11, nud.CallStack.Count, "#C1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [7], "#C2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [8], "#C3");
            Assert.AreEqual("UpdateEditText", nud.CallStack [9], "#C4");
            Assert.AreEqual("UpdateEditText", nud.CallStack [10], "#C5");
            Assert.AreEqual(5, value_changed, "#C6");
            Assert.AreEqual(8, nud.Value, "#C7");
            Assert.AreEqual(11, nud.CallStack.Count, "#C8");
            Assert.AreEqual(5, value_changed, "#C9");
            Assert.AreEqual(5, text_changed, "#C10");
            nud.user_edit = false;
            Assert.AreEqual("8", nud.Text, "#C11");
            Assert.AreEqual(11, nud.CallStack.Count, "#C12");
            Assert.AreEqual(5, value_changed, "#C13");
            Assert.AreEqual(5, text_changed, "#C14");

            nud.user_edit = false;
            nud.Text      = "555";
            nud.user_edit = true;
            nud.UpButton();
            Assert.AreEqual(14, nud.CallStack.Count, "#D1");
            Assert.AreEqual("ValidateEditText", nud.CallStack [11], "#D2");
            Assert.AreEqual("UpdateEditText", nud.CallStack [12], "#D3");
            Assert.AreEqual("UpdateEditText", nud.CallStack [13], "#D4");
            Assert.AreEqual(6, value_changed, "#D5");
            Assert.AreEqual(100, nud.Value, "#D6");
            Assert.AreEqual(14, nud.CallStack.Count, "#D7");
            Assert.AreEqual(6, value_changed, "#D8");
            Assert.AreEqual(7, text_changed, "#D9");
            nud.user_edit = false;
            Assert.AreEqual("100", nud.Text, "#D10");
            Assert.AreEqual(14, nud.CallStack.Count, "#D11");
            Assert.AreEqual(6, value_changed, "#D12");
            Assert.AreEqual(7, text_changed, "#D13");
        }
示例#9
0
		public void NumericUpDown_Value_Invalid ()
		{
			NumericNew nud = new NumericNew ();

			try {
				nud.Value = 1000;
				Assert.Fail ("#A1");
#if NET_2_0
			} catch (ArgumentOutOfRangeException ex) {
				Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#A2");
				Assert.IsNotNull (ex.Message, "#A3");
				Assert.IsNotNull (ex.ParamName, "#A4");
				Assert.AreEqual ("Value", ex.ParamName, "#A5");
				Assert.IsNull (ex.InnerException, "#A6");
			}
#else
			} catch (ArgumentException ex) {
示例#10
0
		public void NumericUpDown_Value ()
		{
			// obtain Value when UserEdit is false
			NumericNew nud = new NumericNew ();
			nud.TextChanged += new EventHandler (NumericUpDown_TextChanged);
			nud.ValueChanged += new EventHandler (NumericUpDown_ValueChanged);
			Assert.AreEqual (2, nud.CallStack.Count, "#A1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [0], "#A2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [1], "#A3");
			Assert.AreEqual (0, nud.Value, "#A4");
			Assert.AreEqual (2, nud.CallStack.Count, "#A5");
			Assert.AreEqual (0, value_changed, "#A6");
			Assert.AreEqual (0, text_changed, "#A7");

			// obtain Value when UserEdit is true
			nud.user_edit = true;
			Assert.AreEqual (2, nud.CallStack.Count, "#B1");
			Assert.AreEqual (0, nud.Value, "#B2");
			Assert.AreEqual (4, nud.CallStack.Count, "#B3");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [2], "#B4");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [3], "#B5");
			Assert.AreEqual (0, value_changed, "#B6");
			Assert.AreEqual (0, text_changed, "#B7");

			// modify Value when UserEdit is false
			nud.user_edit = false;
			nud.Value = 10;
			Assert.AreEqual (5, nud.CallStack.Count, "#C1");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [4], "#C2");
			Assert.AreEqual (1, value_changed, "#C3");
			Assert.AreEqual (1, text_changed, "#C4");
			Assert.AreEqual (10, nud.Value, "#C5");
			Assert.AreEqual (5, nud.CallStack.Count, "#C6");
			Assert.AreEqual (1, value_changed, "#C7");
			Assert.AreEqual (1, text_changed, "#C8");

			// setting same Value
			nud.Value = 10;
			Assert.AreEqual (5, nud.CallStack.Count, "#D1");
			Assert.AreEqual (1, value_changed, "#D2");
			Assert.AreEqual (10, nud.Value, "#D3");
			Assert.AreEqual (5, nud.CallStack.Count, "#D4");
			Assert.AreEqual (1, value_changed, "#D5");
			Assert.AreEqual (1, text_changed, "#D6");

			// modify Value when UserEdit is true
			nud.user_edit = true;
			nud.Value = 20;
			Assert.AreEqual (7, nud.CallStack.Count, "#E1");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [5], "#E2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [6], "#E3");
			Assert.AreEqual (3, value_changed, "#E4");
			Assert.AreEqual (1, text_changed, "#E5");
			nud.user_edit = false; // reset UserEdit to avoid Value being parsed from Text
			Assert.AreEqual (10, nud.Value, "#E6");
			Assert.AreEqual (7, nud.CallStack.Count, "#E7");
			Assert.AreEqual (3, value_changed, "#E8");
			Assert.AreEqual (1, text_changed, "#E9");
		}
示例#11
0
		public void NumericUpDown_UpButton ()
		{
			NumericNew nud = new NumericNew ();
			nud.TextChanged += new EventHandler (NumericUpDown_TextChanged);
			nud.ValueChanged += new EventHandler (NumericUpDown_ValueChanged);
			nud.UpButton ();
			Assert.AreEqual (3, nud.CallStack.Count, "#A1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [0], "#A2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [1], "#A3");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [2], "#A4");
			Assert.AreEqual (1, value_changed, "#A5");
			Assert.AreEqual (1, nud.Value, "#A6");
			Assert.AreEqual (3, nud.CallStack.Count, "#A7");
			Assert.AreEqual (1, value_changed, "#A8");
			Assert.AreEqual (1, text_changed, "#A9");

			nud.Text = "5";
			nud.UpButton ();
			Assert.AreEqual (7, nud.CallStack.Count, "#B1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [3], "#B2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [4], "#B3");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [5], "#B4");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [6], "#B5");
			Assert.AreEqual (3, value_changed, "#B6");
			Assert.AreEqual (6, nud.Value, "#B7");
			Assert.AreEqual ("6", nud.Text, "#B8");
			Assert.AreEqual (7, nud.CallStack.Count, "#B9");
			Assert.AreEqual (3, value_changed, "#B10");
			Assert.AreEqual (3, text_changed, "#B11");

			nud.Text = "7";
			nud.user_edit = true;
			nud.UpButton ();
			Assert.AreEqual (11, nud.CallStack.Count, "#C1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [7], "#C2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [8], "#C3");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [9], "#C4");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [10], "#C5");
			Assert.AreEqual (5, value_changed, "#C6");
			Assert.AreEqual (8, nud.Value, "#C7");
			Assert.AreEqual (11, nud.CallStack.Count, "#C8");
			Assert.AreEqual (5, value_changed, "#C9");
			Assert.AreEqual (5, text_changed, "#C10");
			nud.user_edit = false;
			Assert.AreEqual ("8", nud.Text, "#C11");
			Assert.AreEqual (11, nud.CallStack.Count, "#C12");
			Assert.AreEqual (5, value_changed, "#C13");
			Assert.AreEqual (5, text_changed, "#C14");

			nud.user_edit = false;
			nud.Text = "555";
			nud.user_edit = true;
			nud.UpButton ();
			Assert.AreEqual (14, nud.CallStack.Count, "#D1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [11], "#D2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [12], "#D3");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [13], "#D4");
			Assert.AreEqual (6, value_changed, "#D5");
			Assert.AreEqual (100, nud.Value, "#D6");
			Assert.AreEqual (14, nud.CallStack.Count, "#D7");
			Assert.AreEqual (6, value_changed, "#D8");
			Assert.AreEqual (7, text_changed, "#D9");
			nud.user_edit = false;
			Assert.AreEqual ("100", nud.Text, "#D10");
			Assert.AreEqual (14, nud.CallStack.Count, "#D11");
			Assert.AreEqual (6, value_changed, "#D12");
			Assert.AreEqual (7, text_changed, "#D13");
		}
示例#12
0
		public void NumericUpDown_EndInit ()
		{
			NumericNew nud = new NumericNew ();
			nud.TextChanged += new EventHandler (NumericUpDown_TextChanged);
			nud.ValueChanged += new EventHandler (NumericUpDown_ValueChanged);
			Assert.AreEqual (2, nud.CallStack.Count, "#A1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [0], "#A2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [1], "#A3");
			Assert.AreEqual (0, nud.Value, "#A4");
			Assert.AreEqual (2, nud.CallStack.Count, "#A5");
			Assert.AreEqual (0, value_changed, "#A6");
			Assert.AreEqual (0, text_changed, "#A7");

			// EndInit without corresponding BeginInit
			nud.EndInit ();
			Assert.AreEqual (3, nud.CallStack.Count, "#B1");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [1], "#B2");
			Assert.AreEqual (0, nud.Value, "#B3");
			Assert.AreEqual (3, nud.CallStack.Count, "#B4");
			Assert.AreEqual (0, value_changed, "#B5");
			Assert.AreEqual (0, text_changed, "#B6");
		}
示例#13
0
		public void NumericUpDown_ChangingText ()
		{
			NumericNew nud = new NumericNew ();
			nud.TextChanged += new EventHandler (NumericUpDown_TextChanged);
			nud.ValueChanged += new EventHandler (NumericUpDown_ValueChanged);
			Assert.IsFalse (nud.changing_text, "#A1");
			Assert.IsFalse (nud.user_edit, "#A2");
			Assert.AreEqual (0, text_changed, "#A3");

			nud.Text = "1";
			Assert.IsFalse (nud.changing_text, "#B1");
			Assert.IsFalse (nud.user_edit, "#B2");
			Assert.AreEqual (5, nud.CallStack.Count, "#B3");
			Assert.AreEqual (1, text_changed, "#B4");

			nud.changing_text = true;
			nud.Text = "2";
			Assert.IsFalse (nud.changing_text, "#C1");
			Assert.IsFalse (nud.user_edit, "#C2");
			Assert.AreEqual (5, nud.CallStack.Count, "#C3");
			Assert.AreEqual (2, text_changed, "#C4");
		}
示例#14
0
		public void NumericUpDown_BeginInit ()
		{
			NumericNew nud = new NumericNew ();
			nud.TextChanged += new EventHandler (NumericUpDown_TextChanged);
			nud.ValueChanged += new EventHandler (NumericUpDown_ValueChanged);
			Assert.AreEqual (2, nud.CallStack.Count, "#A1");
			Assert.AreEqual ("ValidateEditText", nud.CallStack [0], "#A2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [1], "#A3");
			Assert.AreEqual (0, nud.Value, "#A4");
			Assert.AreEqual (2, nud.CallStack.Count, "#A5");
			Assert.AreEqual (0, value_changed, "#A6");
			Assert.AreEqual (0, text_changed, "#A7");

			nud.BeginInit ();
			Assert.AreEqual (2, nud.CallStack.Count, "#B1");
			nud.Value = 10;
			Assert.AreEqual (3, nud.CallStack.Count, "#B2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [2], "#B3");
			Assert.AreEqual ("0", nud.Text, "#B4");
			Assert.AreEqual (10, nud.Value, "#B5");
			Assert.AreEqual (3, nud.CallStack.Count, "#B6");
			Assert.AreEqual (1, value_changed, "#B7");
			Assert.AreEqual (0, text_changed, "#B8");
			nud.EndInit ();
			Assert.AreEqual (4, nud.CallStack.Count, "#B9");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [3], "#B10");
			Assert.AreEqual (1, text_changed, "#B11");
			Assert.AreEqual ("10", nud.Text, "#B12");
			Assert.AreEqual (10, nud.Value, "#B13");
			Assert.AreEqual (4, nud.CallStack.Count, "#B14");
			Assert.AreEqual (1, value_changed, "#B15");
			Assert.AreEqual (1, text_changed, "#B16");

			// multiple calls to BeginInit are undone by a single EndInit call
			nud.BeginInit ();
			nud.BeginInit ();
			Assert.AreEqual (4, nud.CallStack.Count, "#C1");
			nud.Value = 20;
			Assert.AreEqual (5, nud.CallStack.Count, "#C2");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [4], "#C3");
			Assert.AreEqual ("10", nud.Text, "#C4");
			Assert.AreEqual (20, nud.Value, "#C5");
			Assert.AreEqual (5, nud.CallStack.Count, "#C6");
			Assert.AreEqual (2, value_changed, "#C7");
			Assert.AreEqual (1, text_changed, "#C8");
			nud.EndInit ();
			Assert.AreEqual (6, nud.CallStack.Count, "#C9");
			Assert.AreEqual ("UpdateEditText", nud.CallStack [5], "#C10");
			Assert.AreEqual (2, text_changed, "#C11");
			Assert.AreEqual ("20", nud.Text, "#C12");
			Assert.AreEqual (20, nud.Value, "#C13");
			Assert.AreEqual (6, nud.CallStack.Count, "#C14");
			Assert.AreEqual (2, value_changed, "#C15");
			Assert.AreEqual (2, text_changed, "#C16");
		}
示例#15
0
		public void NumericUpDownEditValidateTest ()
		{
			NumericNew nn = new NumericNew ();
			Assert.IsTrue (nn.update_edit_text_called, "#17");
			
			Assert.IsFalse (nn.user_edit, "#18");
			
			nn.Reset ();
			nn.user_edit = true;
			nn.Text = "10";
			Assert.IsTrue (nn.validate_edit_text_called, "#19");
			Assert.IsTrue (nn.update_edit_text_called, "#20");
			
			nn.Reset ();
			nn.user_edit = false;
			nn.Text = "11";
			Assert.IsTrue (nn.validate_edit_text_called, "#21");
			Assert.IsTrue (nn.update_edit_text_called, "#22");
			
			nn.DownButton ();
			Assert.AreEqual (10, nn.Value, "#23");
		}
示例#16
0
		public void NumericUpDown_Value_Invalid ()
		{
			NumericNew nud = new NumericNew ();

			try {
				nud.Value = 1000;
				Assert.Fail ("#A1");
			} catch (ArgumentOutOfRangeException ex) {
				Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#A2");
				Assert.IsNotNull (ex.Message, "#A3");
				Assert.IsNotNull (ex.ParamName, "#A4");
				Assert.AreEqual ("Value", ex.ParamName, "#A5");
				Assert.IsNull (ex.InnerException, "#A6");
			}

			try {
				nud.Value = 1000;
				Assert.Fail ("#B1");
			} catch (ArgumentOutOfRangeException ex) {
				Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#B2");
				Assert.IsNotNull (ex.Message, "#B3");
				Assert.IsNotNull (ex.ParamName, "#B4");
				Assert.AreEqual ("Value", ex.ParamName, "#B5");
				Assert.IsNull (ex.InnerException, "#B6");
			}

			try {
				nud.Value = -1000;
				Assert.Fail ("#C1");
			} catch (ArgumentOutOfRangeException ex) {
				Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#C2");
				Assert.IsNotNull (ex.Message, "#C3");
				Assert.IsNotNull (ex.ParamName, "#C4");
				Assert.AreEqual ("Value", ex.ParamName, "#C5");
				Assert.IsNull (ex.InnerException, "#C6");
			}

			nud.BeginInit ();

			nud.Value = 1000;
			Assert.AreEqual (1000, nud.Value, "#D1");
			nud.Value = 1000;
			Assert.AreEqual (1000, nud.Value, "#D2");
			nud.Value = -1000;
			Assert.AreEqual (-1000, nud.Value, "#D3");
			nud.EndInit ();
			try {
				nud.Value = -1000;
				Assert.Fail ("#E1");
			} catch (ArgumentOutOfRangeException ex) {
				Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#E2");
				Assert.IsNotNull (ex.Message, "#E3");
				Assert.IsNotNull (ex.ParamName, "#E4");
				Assert.AreEqual ("Value", ex.ParamName, "#E5");
				Assert.IsNull (ex.InnerException, "#E6");
			}
		}