Exemplo n.º 1
0
        public void RefreshRequestedEventFires()
        {
            int refreshRequestedCount = 0;

            RunOnUIThread.Execute(() =>
            {
                RefreshVisualizer refreshVisualizer = new RefreshVisualizer();
                refreshVisualizer.RefreshRequested += (RefreshVisualizer sender, RefreshRequestedEventArgs args) => { refreshRequestedCount++; };
                refreshVisualizer.RequestRefresh();
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.AreEqual <int>(1, refreshRequestedCount);
            });
        }
Exemplo n.º 2
0
        public void RefreshCompletedDeferralCompletedOffUIThread()
        {
            RunOnUIThread.Execute(() =>
            {
                RefreshVisualizer refreshVisualizer = new RefreshVisualizer();
                Compositor compositor = ElementCompositionPreview.GetElementVisual(refreshVisualizer).Compositor;
                RefreshInfoProviderImpl refreshInfoProviderImpl             = new RefreshInfoProviderImpl(compositor);
                ((IRefreshVisualizerPrivate)refreshVisualizer).InfoProvider = refreshInfoProviderImpl;
                refreshVisualizer.RefreshRequested += (RefreshVisualizer sender, RefreshRequestedEventArgs args) =>
                {
                    Deferral def = args.GetDeferral();

                    Windows.System.Threading.ThreadPool.RunAsync(
                        (IAsyncAction action) =>
                    {
                        Log.Comment("RefreshVisualizer.RefreshRequested event handler");
                        def.Complete();
                    }).AsTask().Wait();
                };

                Verify.AreEqual <int>(0, refreshInfoProviderImpl.OnRefreshStartedCalls);
                Verify.AreEqual <int>(0, refreshInfoProviderImpl.OnRefreshCompletedCalls);

                MUXControlsTestApp.App.TestContentRoot = refreshVisualizer;

                refreshVisualizer.RequestRefresh();
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                RefreshVisualizer refreshVisualizer             = (RefreshVisualizer)MUXControlsTestApp.App.TestContentRoot;
                RefreshInfoProviderImpl refreshInfoProviderImpl = ((RefreshInfoProviderImpl)((IRefreshVisualizerPrivate)refreshVisualizer).InfoProvider);

                Verify.AreEqual <int>(1, refreshInfoProviderImpl.OnRefreshStartedCalls);
                //Since we are completing the deferral off the UI thread the refresh never completed.
                Verify.AreEqual <int>(0, refreshInfoProviderImpl.OnRefreshCompletedCalls);
            });
        }
Exemplo n.º 3
0
        public void CanInstantiate()
        {
            AutoResetEvent refreshVisualizerLoadedEvent = new AutoResetEvent(false);

            RunOnUIThread.Execute(() =>
            {
                RefreshVisualizer refreshVisualizer = new RefreshVisualizer();
                refreshVisualizer.Loaded           += (object sender, RoutedEventArgs e) =>
                {
                    Log.Comment("RefreshVisualizer.Loaded event handler");
                    refreshVisualizerLoadedEvent.Set();
                };
                MUXControlsTestApp.App.TestContentRoot = refreshVisualizer;
            });

            Log.Comment("Waiting for Loaded event");
            refreshVisualizerLoadedEvent.WaitOne(c_MaxWaitDuration);
            Log.Comment("Default UI set up");

            RunOnUIThread.Execute(() =>
            {
                Verify.IsNotNull(MUXControlsTestApp.App.TestContentRoot as RefreshVisualizer);
            });
        }
Exemplo n.º 4
0
 private void RefreshVisualizer_RefreshStateChanged(RefreshVisualizer sender, RefreshStateChangedEventArgs args)
 {
     this.StateText.Text = args.NewState.ToString();
 }
 private void RefreshVisualizer_RefreshStateChanged(RefreshVisualizer sender, RefreshStateChangedEventArgs args)
 {
     UpdateStatesComboBox(args.NewState);
 }