public void KeyboardTest() { using (var setup = new TestSetupHelper("SplitButton Tests")) { SplitButton splitButton = FindElement.ByName <SplitButton>("TestSplitButton"); TextBlock clickCountTextBlock = FindElement.ByName <TextBlock>("ClickCountTextBlock"); TextBlock flyoutOpenedCountTextBlock = FindElement.ByName <TextBlock>("FlyoutOpenedCountTextBlock"); TextBlock flyoutClosedCountTextBlock = FindElement.ByName <TextBlock>("FlyoutClosedCountTextBlock"); Verify.AreEqual("0", clickCountTextBlock.DocumentText); Log.Comment("Verify that pressing Space on SplitButton causes a click"); splitButton.SetFocus(); Wait.ForIdle(); KeyboardHelper.PressKey(Key.Space); Wait.ForIdle(); Verify.AreEqual("1", clickCountTextBlock.DocumentText); Verify.AreEqual("0", flyoutOpenedCountTextBlock.DocumentText); Log.Comment("Verify that pressing alt-down on SplitButton opens the flyout"); KeyboardHelper.PressDownModifierKey(ModifierKey.Alt); KeyboardHelper.PressKey(Key.Down); KeyboardHelper.ReleaseModifierKey(ModifierKey.Alt); Wait.ForIdle(); Verify.AreEqual("1", flyoutOpenedCountTextBlock.DocumentText); Verify.AreEqual("0", flyoutClosedCountTextBlock.DocumentText); Log.Comment("Verify that press escape closes the flyout"); KeyboardHelper.PressKey(Key.Escape); Wait.ForIdle(); Verify.AreEqual("1", flyoutClosedCountTextBlock.DocumentText); } }