예제 #1
0
        public void ExistShouldReturnTrueIfWindowIsAButton()
        {
            // GIVEN
            var hwndMock = new Mock <IHwnd>();

            hwndMock.Expect(hwnd => hwnd.IsWindow).Returns(true);
            hwndMock.Expect(hwnd => hwnd.ClassName).Returns("Button");

            // WHEN
            var button = new WinButton(hwndMock.Object);

            // THEN
            Assert.That(button.Exists(), Is.True);
            hwndMock.VerifyAll();
        }
예제 #2
0
		/// <summary>
		/// Handles the dialog if the <paramref name="window" /> is a
		/// security alert dialog.
		/// </summary>
		/// <param name="window">The window.</param>
		/// <returns></returns>
		public override bool HandleDialog(Window window)
		{
            if (CanHandleDialog(window))
			{
				NativeMethods.SetForegroundWindow(window.Hwnd);
				NativeMethods.SetActiveWindow(window.Hwnd);

				var buttonOk = new WinButton(1, window.Hwnd);
				if (buttonOk.Exists())
                    buttonOk.Click();
                else
				{
				    var buttonYes = new WinButton(6, window.Hwnd);
                    buttonYes.Click();
				}

				return true;
			}

			return false;
		}
예제 #3
0
		protected static bool ButtonWithId1Exists(IntPtr windowHwnd)
		{
			var button = new WinButton(1, windowHwnd);
			return button.Exists();
		}
        private WinButton GetButtonToPress(Window window)
        {
            WinButton btn = null;

            switch (_optionEnum)
            {
                case FileDownloadOptionEnum.Run:
                    btn = new WinButton(4426, window.Hwnd);
                    break;

                case FileDownloadOptionEnum.Open:
                    btn = new WinButton(4426, window.Hwnd);
                    break;

                case FileDownloadOptionEnum.Save:
                    btn = new WinButton(4427, window.Hwnd);
                    if (!btn.Exists())
                    {
                        btn = new WinButton(4424, window.Hwnd);
                    }
                    break;

                case FileDownloadOptionEnum.Cancel:
                    btn = new WinButton(2, window.Hwnd);
                    break;
            }

            return btn;
        }
예제 #5
0
        protected static bool ButtonWithId1Exists(IntPtr windowHwnd)
        {
            var button = new WinButton(1, windowHwnd);

            return(button.Exists());
        }