public async Task CanOpenFlyoutByKeyboard()
        {
            TestCleanupWrapper cleanup;

            Grid rootPanel = null;

            CalendarDatePickerHelper helper = new CalendarDatePickerHelper();
            await helper.PrepareLoadedEvent();

            Windows.UI.Xaml.Controls.CalendarDatePicker cp = await helper.GetCalendarDatePicker();

            rootPanel = await CreateTestResources();

            // load into visual tree
            await RunOnUIThread(() =>
            {
                rootPanel.Children.Append(cp);
            });

            helper.WaitForLoaded();

            await TestServices.WindowHelper.WaitForIdle();

            await RunOnUIThread(() =>
            {
                cp.Focus(Windows.UI.Xaml.FocusState.Programmatic);
            });

            helper.PrepareOpenedEvent();
            await TestServices.WindowHelper.WaitForIdle();

            // press enter to open flyout
            TestServices.KeyboardHelper.Enter();

            helper.WaitForOpened();

            // escape to close the flyout
            TestServices.KeyboardHelper.Escape();

            await TestServices.WindowHelper.WaitForIdle();

            helper.PrepareOpenedEvent();

            await RunOnUIThread(() =>
            {
                cp.Focus(Windows.UI.Xaml.FocusState.Programmatic);
            });

            await TestServices.WindowHelper.WaitForIdle();

            // press space to open flyout
            TestServices.KeyboardHelper.PressKeySequence("$d$_ #$u$_ ");

            helper.WaitForOpened();

            // escape to close the flyout
            TestServices.KeyboardHelper.Escape();
            await TestServices.WindowHelper.WaitForIdle();
        }
        public async Task ValidateUIElementTree()
        {
            TestCleanupWrapper cleanup;

            StackPanel rootPanel = null;

            CalendarDatePickerHelper helper = new CalendarDatePickerHelper();

            await helper.PrepareLoadedEvent();

            Windows.UI.Xaml.Controls.CalendarDatePicker cdp = await helper.GetCalendarDatePicker();

            await RunOnUIThread(() =>
            {
                rootPanel = StackPanel(XamlReader.Load(
                                           "<StackPanel xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml' " +
                                           "      Width='400' Height='400' VerticalAlignment='Top' HorizontalAlignment='Left' Background='Black'/> ")
                                       );

                global::Private.Infrastructure.TestServices.WindowHelper.WindowContent = rootPanel;
            });

            // load into visual tree
            await RunOnUIThread(() =>
            {
                rootPanel.Children.Append(cdp);
            });

            helper.WaitForLoaded();

            await TestServices.WindowHelper.WaitForIdle();

            await RunOnUIThread(() =>
            {
                cdp.Focus(Windows.UI.Xaml.FocusState.Pointer);
            });

            await TestServices.WindowHelper.WaitForIdle();

            TestServices.Utilities.VerifyUIElementTree();
        }