public async Task PushingPageBeforeSettingHandlerPropagatesAfterSettingHandler() { ContentPage contentPage1 = new ContentPage(); var navigationPage = new TestNavigationPage(true, setHandler: false); await navigationPage.PushAsync(contentPage1); (navigationPage as IView).Handler = new TestNavigationHandler(); var navTask = navigationPage.CurrentNavigationTask; Assert.IsNotNull(navTask); await navTask; navigationPage.ValidateNavigationCompleted(); }
public async Task PushingPagesWhileNavigating() { ContentPage contentPage1 = new ContentPage(); ContentPage contentPage2 = new ContentPage(); ContentPage contentPage3 = new ContentPage(); var navigationPage = new TestNavigationPage(true, contentPage1); await navigationPage.PushAsync(contentPage2); await navigationPage.PushAsync(contentPage3); Assert.AreEqual(3, navigationPage.Navigation.NavigationStack.Count); Assert.AreEqual(contentPage1, navigationPage.Navigation.NavigationStack[0]); Assert.AreEqual(contentPage2, navigationPage.Navigation.NavigationStack[1]); Assert.AreEqual(contentPage3, navigationPage.Navigation.NavigationStack[2]); navigationPage.ValidateNavigationCompleted(); }