public void GetBlikCodeCommand__ShouldNotNavigateOnInvalidCredentials(string username) { // ARRANGE var parameters = new NavigationParameters { { nameof(username), username }, }; var mockNavigationService = new Mock <INavigationService>(); var viewModel = new AccountPageViewModel(mockNavigationService.Object); // ACT Should.NotThrow(() => viewModel.OnNavigatingTo(parameters)); // ASSERT viewModel.GetBlikCodeCommand.CanExecute().ShouldBeFalse(); }
public void OnNavigatingTo__NavigatesToSignInPageOnInvalidCredentials(string username) { // ARRANGE var parameters = new NavigationParameters { { nameof(username), username }, }; var mockNavigationService = new Mock <INavigationService>(); mockNavigationService.Setup(n => n.NavigateAsync($"/{nameof(SignInPage)}")) .ReturnsAsync(new Mock <INavigationResult>().Object); var viewModel = new AccountPageViewModel(mockNavigationService.Object); // ACT Should.NotThrow(() => viewModel.OnNavigatingTo(parameters)); // ASSERT mockNavigationService.Verify(n => n.NavigateAsync($"/{nameof(SignInPage)}"), Times.Once); }
public void OnNavigatingTo__ParserNavigationParametersCorrectly(string username) { // ARRANGE var parameters = new NavigationParameters { { nameof(username), username }, }; var mockNavigationService = new Mock <INavigationService>(); mockNavigationService.Setup(n => n.NavigateAsync($"/{nameof(SignInPage)}")) .ReturnsAsync(new Mock <INavigationResult>().Object); var viewModel = new AccountPageViewModel(mockNavigationService.Object); // ACT Should.NotThrow(() => viewModel.OnNavigatingTo(parameters)); // ASSERT viewModel.Username.ShouldBeSameAs(username ?? string.Empty); }
public void GetBlikCodeCommand__ShouldNavigateToCorrectViewOnValidCredentials(string username) { // ARRANGE var parameters = new NavigationParameters { { nameof(username), username }, }; var mockNavigationService = new Mock <INavigationService>(); mockNavigationService.Setup(n => n.NavigateAsync($"{nameof(BlikCodePage)}", new NavigationParameters($"{nameof(username)}={username}"))) .ReturnsAsync(new Mock <INavigationResult>().Object); var viewModel = new AccountPageViewModel(mockNavigationService.Object); // ACT Should.NotThrow(() => viewModel.OnNavigatingTo(parameters)); Should.NotThrow(viewModel.GetBlikCodeCommand.Execute); // ASSERT mockNavigationService.Verify(n => n.NavigateAsync($"{nameof(BlikCodePage)}", new NavigationParameters($"{nameof(username)}={username}")), Times.Once); }