public void CanInstantiate() { RunOnUIThread.Execute(() => { ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); }); }
public void AdaptOnSVWithoutWaitingForLoaded() { var objects = new Dictionary <string, WeakReference>(); RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); objects["sv"] = new WeakReference(sv); sv.Content = new Button(); var adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); objects["adapter"] = new WeakReference(adapter); adapter.Adapt(sv, new Size(1.0, 1.0)); Content = sv; Content.UpdateLayout(); adapter = null; Content = null; }); IdleSynchronizer.Wait(); GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); RunOnUIThread.Execute(() => CheckLeaks(objects)); }
public void AdaptOnSVWithoutWaitingForLoaded() { var objects = new Dictionary <string, WeakReference>(); var resetEvent = new AutoResetEvent(false); ScrollViewerIRefreshInfoProviderAdapter adapter; RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); objects["sv"] = new WeakReference(sv); sv.Content = new Button(); sv.Loaded += (object sender, RoutedEventArgs e) => { resetEvent.Set(); }; adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); objects["adapter"] = new WeakReference(adapter); adapter.Adapt(sv, new Size(1.0, 1.0)); MUXControlsTestApp.App.TestContentRoot = sv; }); IdleSynchronizer.Wait(); resetEvent.WaitOne(); RunOnUIThread.Execute(() => { adapter = null; MUXControlsTestApp.App.TestContentRoot = null; }); IdleSynchronizer.Wait(); GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); RunOnUIThread.Execute(() => CheckLeaks(objects)); }
public void AdaptOnNullThrows() { RunOnUIThread.Execute(() => { ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); Verify.IsNotNull(adapter); Verify.Throws <ArgumentException>(() => { adapter.Adapt(null, new Size(1.0, 1.0)); }); }); }
private void AdaptOnSVWithoutWaitingForLoaded_Click(object sender, RoutedEventArgs e) { ScrollViewer sv = new ScrollViewer(); objects["sv"] = new WeakReference(sv); sv.Content = new Button(); ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); adapter.Adapt(sv, new Size(1.0, 1.0)); this.TestRoot.Children.Add(sv); }
public void AdaptOnSVWithNonUIElementContentThrows() { RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); sv.Content = 1; Content = sv; Content.UpdateLayout(); ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); Verify.IsNotNull(adapter); Verify.Throws <ArgumentException>(() => { adapter.Adapt(sv, new Size(1.0, 1.0)); }); }); }
public void AdaptOnSV() { var resetEvent = new AutoResetEvent(false); RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); sv.Content = new Button(); sv.Loaded += (object sender, RoutedEventArgs e) => { resetEvent.Set(); }; Content = sv; Content.UpdateLayout(); ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); adapter.Adapt(sv, new Size(1.0, 1.0)); }); }
public void AdaptOnSVWithoutContentThrows() { var resetEvent = new AutoResetEvent(false); RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); sv.Loaded += (object sender, RoutedEventArgs e) => { resetEvent.Set(); }; Content = sv; Content.UpdateLayout(); Verify.IsNull(sv.Content); ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); Verify.IsNotNull(adapter); Verify.Throws <ArgumentException>(() => { adapter.Adapt(sv, new Size(1.0, 1.0)); }); }); }
public void AdaptOnSVWithNonUIElementContentThrows() { RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); sv.Content = 1; MUXControlsTestApp.App.TestContentRoot = sv; }); IdleSynchronizer.Wait(); RunOnUIThread.Execute(() => { ScrollViewer sv = (ScrollViewer)MUXControlsTestApp.App.TestContentRoot; ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); Verify.IsNotNull(adapter); Verify.Throws <ArgumentException>(() => { adapter.Adapt(sv, new Size(1.0, 1.0)); }); }); }
public void AdaptOnSV() { var resetEvent = new AutoResetEvent(false); RunOnUIThread.Execute(() => { ScrollViewer sv = new ScrollViewer(); sv.Content = new Button(); sv.Loaded += (object sender, RoutedEventArgs e) => { resetEvent.Set(); }; MUXControlsTestApp.App.TestContentRoot = sv; }); IdleSynchronizer.Wait(); resetEvent.WaitOne(); RunOnUIThread.Execute(() => { ScrollViewer sv = (ScrollViewer)MUXControlsTestApp.App.TestContentRoot; ScrollViewerIRefreshInfoProviderAdapter adapter = new ScrollViewerIRefreshInfoProviderAdapter(RefreshPullDirection.TopToBottom, null); adapter.Adapt(sv, new Size(1.0, 1.0)); }); }