public async Task NavigateNextAsyncTest_TermsOfService() { SplashNavigationService unitUnderTest = CreateService(); unitUnderTest.Destination = Destination.HomePage; unitUnderTest.DestinationPageParameters = new NavigationParameters(); mockTermsUpdateService.Setup(x => x.GetTermsUpdateInfo()).ReturnsAsync(_termsUpdateInfoDefault); await unitUnderTest.Prepare(); mockTermsUpdateService.Verify(x => x.GetTermsUpdateInfo(), Times.Once()); mockUserDataRepository.Setup(x => x.IsAllAgreed()).Returns(true); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault)).Returns(true); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault)).Returns(true); mockSendEventLogStateRepository.Setup(x => x.IsExistNotSetEventType()).Returns(true); await unitUnderTest.NavigateNextAsync(); mockUserDataRepository.Verify(x => x.IsAllAgreed(), Times.Once()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault), Times.Once()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault), Times.Never()); mockSendEventLogStateRepository.Verify(x => x.IsExistNotSetEventType(), Times.Never()); mockNavigatoinService.Verify(x => x.NavigateAsync("/ReAgreeTermsOfServicePage", It.Is <INavigationParameters>(x => x.ContainsKey(ReAgreeTermsOfServicePage.TermsOfServiceDetailKey) && x.GetValue <TermsUpdateInfoModel.Detail>(ReAgreeTermsOfServicePage.TermsOfServiceDetailKey).Text == "Test: Terms of service")), Times.Once()); }
public async Task NavigateNextAsyncTest_Tutorial() { SplashNavigationService unitUnderTest = CreateService(); unitUnderTest.Destination = Destination.HomePage; unitUnderTest.DestinationPageParameters = new NavigationParameters(); mockTermsUpdateService.Setup(x => x.GetTermsUpdateInfo()).ReturnsAsync(_termsUpdateInfoDefault); await unitUnderTest.Prepare(); mockTermsUpdateService.Verify(x => x.GetTermsUpdateInfo(), Times.Once()); mockUserDataRepository.Setup(x => x.IsAllAgreed()).Returns(false); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault)).Returns(false); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault)).Returns(false); mockSendEventLogStateRepository.Setup(x => x.IsExistNotSetEventType()).Returns(false); await unitUnderTest.NavigateNextAsync(); mockUserDataRepository.Verify(x => x.IsAllAgreed(), Times.Once()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault), Times.Never()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault), Times.Never()); mockSendEventLogStateRepository.Verify(x => x.IsExistNotSetEventType(), Times.Never()); mockNavigatoinService.Verify(x => x.NavigateAsync("/TutorialPage1", It.IsAny <INavigationParameters>()), Times.Once()); }
public async Task NavigateNextAsyncTest_Destination() { SplashNavigationService unitUnderTest = CreateService(); unitUnderTest.Destination = Destination.HomePage; unitUnderTest.DestinationPageParameters = new NavigationParameters { { "test-key", "test-value" } }; mockTermsUpdateService.Setup(x => x.GetTermsUpdateInfo()).ReturnsAsync(_termsUpdateInfoDefault); await unitUnderTest.Prepare(); mockTermsUpdateService.Verify(x => x.GetTermsUpdateInfo(), Times.Once()); mockUserDataRepository.Setup(x => x.IsAllAgreed()).Returns(true); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault)).Returns(false); mockTermsUpdateService.Setup(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault)).Returns(false); mockSendEventLogStateRepository.Setup(x => x.IsExistNotSetEventType()).Returns(false); await unitUnderTest.NavigateNextAsync(); mockUserDataRepository.Verify(x => x.IsAllAgreed(), Times.Once()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.TermsOfService, _termsUpdateInfoDefault), Times.Once()); mockTermsUpdateService.Verify(x => x.IsUpdated(TermsType.PrivacyPolicy, _termsUpdateInfoDefault), Times.Once()); mockSendEventLogStateRepository.Verify(x => x.IsExistNotSetEventType(), Times.Once()); mockNavigatoinService.Verify(x => x.NavigateAsync( Destination.HomePage.ToPath(), It.Is <INavigationParameters>(x => x.ContainsKey("test-key") && x.GetValue <string>("test-key") == "test-value")), Times.Once()); }
public async Task PrepareTestAsync() { SplashNavigationService unitUnderTest = CreateService(); mockTermsUpdateService.Setup(x => x.GetTermsUpdateInfo()).ReturnsAsync(_termsUpdateInfoDefault); await unitUnderTest.Prepare(); mockTermsUpdateService.Verify(x => x.GetTermsUpdateInfo(), Times.Once()); }