Пример #1
0
        public async Task RestoreNavigationStack_NavigatesToHomePageIfStateFileIsCorrupt()
        {
            MockNavigationStack navigationStack   = new MockNavigationStack();
            MockStorageManager  storageManager    = new MockStorageManager();
            INavigationManager  navigationManager = CreateNavigationManager(navigationStack: navigationStack, storageManager: storageManager);

            navigationManager.NavigationStorageType = NavigationStorageType.Local;

            InvalidNavigationState state = new InvalidNavigationState();
            await storageManager.StoreAsync <InvalidNavigationState>(ApplicationData.Current.LocalFolder, "Okra_Navigation_NavigationManager.xml", state);

            bool success = await navigationManager.RestoreNavigationStack();

            Assert.Equal(false, success);
            string[] pageNames = navigationStack.Select(page => page.PageName).ToArray();
            Assert.Equal(new string[] { "Home" }, pageNames);
        }
        public async Task RestoreNavigationStack_NavigatesToHomePageIfStateFileIsCorrupt()
        {
            MockNavigationStack navigationStack = new MockNavigationStack();
            MockStorageManager storageManager = new MockStorageManager();
            INavigationManager navigationManager = CreateNavigationManager(navigationStack: navigationStack, storageManager: storageManager);
            navigationManager.NavigationStorageType = NavigationStorageType.Local;

            InvalidNavigationState state = new InvalidNavigationState();
            await storageManager.StoreAsync<InvalidNavigationState>(ApplicationData.Current.LocalFolder, "Okra_Navigation_NavigationManager.xml", state);

            bool success = await navigationManager.RestoreNavigationStack();

            Assert.Equal(false, success);
            string[] pageNames = navigationStack.Select(page => page.PageName).ToArray();
            Assert.Equal(new string[] { "Home" }, pageNames);
        }