Beispiel #1
0
        public void ComplexExpectation()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button4");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label5");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectDialog <Materials.Dialog1>(
                    (xUnitForms.DialogExpectation.CallbackResult result) =>
                {
                    Assert.True(result.InvokedTimes == 1 || result.InvokedTimes == 2);
                }, 2);

                exp.ExpectDialog <Materials.Dialog2>(1);

                exp.ExpectMessageBox("Clicked button 4 1st.", 1,
                                     (xUnitForms.DialogExpectation.CallbackResult result) => result.MessageBoxTester.Execute(xUnitForms.MessageBoxTester.Command.OK));

                exp.ExpectMessageBox("Clicked button 4 2nd.", 1,
                                     (xUnitForms.DialogExpectation.CallbackResult result) => result.MessageBoxTester.Execute(xUnitForms.MessageBoxTester.Command.Cancel));

                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
                exp.Verify();
            }

            Assert.Equal <string>("Onz", lbl_tester.Control.Text);
        }
Beispiel #2
0
        public void AutoExpectDialogWhenConstructFormTester_Unexpected_ExceptionThrough()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f, true);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button1");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label2");

            Assert.Throws <System.Collections.Generic.KeyNotFoundException>(
                () => btn_tester.RaiseEvent("Click"));
        }
        public void ComponentRaiseEvent_TimerTicked()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var tm_tester  = f_tester.FindComponent <System.Windows.Forms.Timer>("timer1");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label1");

            tm_tester.RaiseEvent("Tick"); // Will change the label1's text.

            Assert.Equal <string>("Timer ticked.", lbl_tester.Control.Text);
        }
        public void GetAControl_TopLevel()
        {
            var f        = new Materials.Form1();
            var f_tester = new xUnitForms.FormTester <Materials.Form1>(f);

            var txt2_tester = f_tester.Get <System.Windows.Forms.TextBox>("textBox2");

            Assert.NotNull(txt2_tester);
            Assert.NotNull(txt2_tester.Control);
            Assert.IsType <System.Windows.Forms.TextBox>(txt2_tester.Control);
            Assert.Equal <string>("textBox2", txt2_tester.Control.Text);
        }
        public void FindAControl_InForm()
        {
            var f        = new Materials.Form1();
            var f_tester = new xUnitForms.FormTester <Materials.Form1>(f);

            var llb_tester = f_tester.FindControl <System.Windows.Forms.LinkLabel>("linkLabel1");

            Assert.NotNull(llb_tester);
            Assert.NotNull(llb_tester.Control);
            Assert.IsType <System.Windows.Forms.LinkLabel>(llb_tester.Control);
            Assert.Equal <string>("linkLabel1", llb_tester.Control.Text);
        }
        public void FindAComponent_ImageList()
        {
            var f        = new Materials.Form1();
            var f_tester = new xUnitForms.FormTester <Materials.Form1>(f);

            var imgs_tester = f_tester.FindComponent <System.Windows.Forms.ImageList>("imageList1");

            Assert.NotNull(imgs_tester);
            Assert.NotNull(imgs_tester.Component);
            Assert.IsType <System.Windows.Forms.ImageList>(imgs_tester.Component);
            Assert.Equal <int>(3, imgs_tester.Component.Images.Count);
        }
        public void FindAControl_InUserControl()
        {
            var f        = new Materials.Form1();
            var f_tester = new xUnitForms.FormTester <Materials.Form1>(f);

            var cbo_tester = f_tester.FindControl <System.Windows.Forms.ComboBox>("comboBox1");

            Assert.NotNull(cbo_tester);
            Assert.NotNull(cbo_tester.Control);
            Assert.IsType <System.Windows.Forms.ComboBox>(cbo_tester.Control);
            Assert.Equal <int>(2, cbo_tester.Control.Items.Count);
        }
Beispiel #8
0
        public void AutoExpectDialogWhenConstructFormTester_Expected()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f, true);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button1");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label2");

            f_tester.DialogExpectation.ExpectDialog <Materials.Dialog1>();
            btn_tester.RaiseEvent("Click"); // This will pop up Dialog1.
            f_tester.DialogExpectation.Verify();

            Assert.Equal <string>("Dialog1 popped up.", lbl_tester.Control.Text);
        }
Beispiel #9
0
        public void Strict_ExpectMessageBox()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button3");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label4");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectMessageBox();
                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
            }

            Assert.Equal <string>("OK", lbl_tester.Control.Text);
        }
Beispiel #10
0
        public void Strict_ShowTwiceAndExpectTwice_Correct()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button2");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label3");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectDialog <Materials.Dialog1>(2);
                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
                exp.Verify();
            }

            Assert.Equal <string>("Dialog1 popped up twice.", lbl_tester.Control.Text);
        }
Beispiel #11
0
        public void Strict_DefaultDelegation_NoExpectedTimes()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button1");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label2");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectDialog <Materials.Dialog1>();
                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1.
                exp.Verify();
            }

            Assert.Equal <string>("Dialog1 popped up.", lbl_tester.Control.Text);
        }
Beispiel #12
0
        public void GetAControl_DeepInto()
        {
            var f        = new Materials.Form1();
            var f_tester = new xUnitForms.FormTester <Materials.Form1>(f);

            var txt1_tester = f_tester
                              .Get <System.Windows.Forms.GroupBox>("groupBox1")
                              .Get <System.Windows.Forms.TabControl>("tabControl1")
                              .Get <System.Windows.Forms.TabPage>("tabPage2")
                              .Get <System.Windows.Forms.TextBox>("textBox1");

            Assert.NotNull(txt1_tester);
            Assert.NotNull(txt1_tester.Control);
            Assert.IsType <System.Windows.Forms.TextBox>(txt1_tester.Control);
            Assert.Equal <string>("textBox1", txt1_tester.Control.Text);
        }
Beispiel #13
0
        public void ExpectSpecificMessageBoxButExpectMoreTimes()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button3");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label4");

            Assert.Throws <xUnitForms.DialogExpectation.VerifyFailedException>(() =>
            {
                using (var exp = f_tester.BeginDialogExpectation())
                {
                    exp.ExpectMessageBox("Clicked button 3.", 3);
                    btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
                    exp.Verify();
                }
            });
        }
Beispiel #14
0
        public void ExpectSpecificMessageBoxButUnexpectedPopped()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button3");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label4");

            Assert.Throws <System.Collections.Generic.KeyNotFoundException>(() =>
            {
                using (var exp = f_tester.BeginDialogExpectation())
                {
                    exp.ExpectMessageBox("I'm an unexpected message box.", 1);
                    btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
                    exp.Verify();
                }
            });
        }
Beispiel #15
0
        public void Strict_ShowTwiceButExpectOnce_OverflowException()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button2");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label3");

            Assert.Throws <OverflowException>(
                () =>
            {
                using (var exp = f_tester.BeginDialogExpectation())
                {
                    exp.ExpectDialog <Materials.Dialog1>(1);
                    btn_tester.RaiseEvent("Click");     // This will pop up Dialog1 twice.
                }
            });
        }
Beispiel #16
0
        public void Strict_ExpectMessageBox_CustomizeHandler()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button3");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label4");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectMessageBox(
                    (xUnitForms.DialogExpectation.CallbackResult result) =>
                {
                    Assert.Equal <xUnitForms.DialogExpectation.CallbackResult.ExpectedKind>(
                        xUnitForms.DialogExpectation.CallbackResult.ExpectedKind.MessageBox,
                        result.Kind);
                    Assert.NotNull(result.MessageBoxTester);
                    result.MessageBoxTester.Execute(xUnitForms.MessageBoxTester.Command.Cancel);
                });
                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1 twice.
            }

            Assert.Equal <string>("Cancel", lbl_tester.Control.Text);
        }
Beispiel #17
0
        public void Strict_CustomizeDelegation_NoExpectedTimes()
        {
            var f          = new Materials.Form1();
            var f_tester   = new xUnitForms.FormTester <Materials.Form1>(f);
            var btn_tester = f_tester.FindControl <System.Windows.Forms.Button>("button1");
            var lbl_tester = f_tester.FindControl <System.Windows.Forms.Label>("label2");

            using (var exp = f_tester.BeginDialogExpectation())
            {
                exp.ExpectDialog <Materials.Dialog1>(
                    (xUnitForms.DialogExpectation.CallbackResult result) =>
                {
                    Assert.Equal <xUnitForms.DialogExpectation.CallbackResult.ExpectedKind>(
                        xUnitForms.DialogExpectation.CallbackResult.ExpectedKind.Dialog,
                        result.Kind);
                    Assert.NotNull(result.FormTester);
                    Assert.IsType <Materials.Dialog1>(result.FormTester.Control);
                });
                btn_tester.RaiseEvent("Click"); // This will pop up Dialog1.
                exp.Verify();
            }

            Assert.Equal <string>("Dialog1 popped up.", lbl_tester.Control.Text);
        }