예제 #1
0
            public void ReturnsADataSourceIfTheUserExistsInTheDatabase()
            {
                var observable = Observable.Return <IDatabaseUser>(FoundationUser.Clean(User));

                Database.User.Single().Returns(observable);

                var result = UserAccessManager.CheckIfLoggedIn();

                result.Should().BeTrue();
            }
            public void ReturnsTrueTheUserExistsInTheDatabase()
            {
                var observable = Observable.Return <IDatabaseUser>(FoundationUser.Clean(User));

                Database.User.Single().Returns(observable);
                PrivateSharedStorageService.HasUserDataStored().Returns(false);

                var result = UserAccessManager.CheckIfLoggedIn();

                result.Should().BeTrue();
            }
예제 #3
0
            public void EmitsWhenUserIsLoggedIn()
            {
                var observer   = Substitute.For <IObserver <ITogglApi> >();
                var observable = Observable.Return <IDatabaseUser>(FoundationUser.Clean(User));

                Database.User.Single().Returns(observable);
                UserAccessManager.UserLoggedIn.Subscribe(observer);

                UserAccessManager.CheckIfLoggedIn();

                observer.Received().OnNext(Arg.Any <ITogglApi>());
            }
            public void EmitsWhenUserIsLoggedAndDataIsInTheDataBase()
            {
                var observer   = Substitute.For <IObserver <ITogglApi> >();
                var observable = Observable.Return <IDatabaseUser>(FoundationUser.Clean(User));

                Database.User.Single().Returns(observable);
                UserAccessManager.UserLoggedIn.Subscribe(observer);

                UserAccessManager.LoginWithSavedCredentials();

                observer.Received().OnNext(Arg.Any <ITogglApi>());
            }
            public void ReturnsTrueAndStoresTheUserDataIfUserIsInTheDatabaseButNotInThePrivateStorage()
            {
                PrivateSharedStorageService.HasUserDataStored().Returns(false);
                var observable = Observable.Return <IDatabaseUser>(FoundationUser.Clean(User));

                Database.User.Single().Returns(observable);

                var result = UserAccessManager.CheckIfLoggedIn();

                result.Should().BeTrue();
                PrivateSharedStorageService.Received().SaveApiToken(Arg.Any <string>());
            }