Example #1
0
        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());
        }
Example #2
0
        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());
        }
Example #3
0
        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());
        }
Example #4
0
        public async Task PrepareTestAsync()
        {
            SplashNavigationService unitUnderTest = CreateService();

            mockTermsUpdateService.Setup(x => x.GetTermsUpdateInfo()).ReturnsAsync(_termsUpdateInfoDefault);

            await unitUnderTest.Prepare();

            mockTermsUpdateService.Verify(x => x.GetTermsUpdateInfo(), Times.Once());
        }