示例#1
0
        /// <summary>Mocks a subscriber to the screen's events</summary>
        /// <param name="screen">Screen to mock an event subcriber to</param>
        /// <returns>The mocked event subscriber</returns>
        private IFocusChangeSubscriber mockSubscriber(Screen screen)
        {
            IFocusChangeSubscriber mockedSubscriber =
                this.mockery.NewMock <IFocusChangeSubscriber>();

            screen.FocusChanged += new EventHandler <Controls.ControlEventArgs>(
                mockedSubscriber.FocusChanged
                );

            return(mockedSubscriber);
        }
示例#2
0
        public void TestFocusChangeEvent()
        {
            Screen screen = new Screen(100.0f, 100.0f);
            IFocusChangeSubscriber mockedSubscriber = mockSubscriber(screen);

            Controls.Control child1 = new Controls.Control();
            Controls.Control child2 = new Controls.Control();
            screen.Desktop.Children.Add(child1);
            screen.Desktop.Children.Add(child2);

            Expect.Once.On(mockedSubscriber).Method("FocusChanged").WithAnyArguments();
            screen.FocusedControl = child1;
            Expect.Once.On(mockedSubscriber).Method("FocusChanged").WithAnyArguments();
            screen.FocusedControl = child2;

            this.mockery.VerifyAllExpectationsHaveBeenMet();
        }