Example #1
0
        public void TestDialog_GoBack()
        {
            var pageDialogServiceMock = new Mock <IPageDialogService>();

            pageDialogServiceMock.Setup(m => m.DisplayAlertAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
            .Returns(Task.FromResult(true));

            var navServiceMock = new Mock <INavigationService>();
            int numberOfCalls  = 0;
            INavigationParameters actualNavParams = null;

            TestableNavigation.TestableGoBackAsyncWithParams = (navSvc, navParams, isModal, isAnimated) =>
            {
                ++numberOfCalls;
                actualNavParams = navParams;
                return(Task.FromResult <INavigationResult>(null));
            };

            var thirdPage = new ThirdPageViewModel(navServiceMock.Object, pageDialogServiceMock.Object);

            thirdPage.OnNavigatedTo(new NavigationParameters("?action=go back"));

            Assert.AreEqual(1, numberOfCalls);
            Assert.AreEqual("go back", actualNavParams["action"]);
        }
        public ThirdPage()
        {
            InitializeComponent();

            BindingContext = _ViewModel = new ThirdPageViewModel();
        }