예제 #1
0
        //public void CheckAuthState(EResponseState state)
        //{
        //    switch (state)
        //    {
        //        case EResponseState.NoConnection:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.NoConnection);
        //            _view.SetInteractionAvailable();
        //            break;
        //        case EResponseState.NoResponse:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.NoResponse);
        //            _view.SetInteractionAvailable();
        //            break;
        //        case EResponseState.NotFound:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.NotFound);
        //            _view.SetInteractionAvailable();
        //            break;
        //        case EResponseState.ServiceUnavailable:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.ServiceUnavailable);
        //            _view.SetInteractionAvailable();
        //            break;
        //        case EResponseState.Unknown:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.Unknown);
        //            _view.SetInteractionAvailable();
        //            break;

        //        case EResponseState.AuthSuccess:
        //            _router.ToPostsFeed();
        //            break;
        //        case EResponseState.AuthError:
        //            _view.ShowAlert(string.Empty, _authLocaleStrings.AuthError);
        //            _view.SetInteractionAvailable();
        //            break;

        //        case EResponseState.Waiting:
        //            _view.SetInteractionUnavailable();
        //            break;

        //        default:
        //            break;
        //    }
        //}

        public void CheckAuthState(EAuthResponseStatus state)
        {
            switch (state)
            {
            case EAuthResponseStatus.Success:
                _router.ToPostsFeed();
                break;

            case EAuthResponseStatus.Error:
            case EAuthResponseStatus.Unauthorized:
                _view.ShowAlert(string.Empty, _authLocaleStrings.OK, _authLocaleStrings.AuthError);
                _view.SetInteractionAvailable();
                break;

            case EAuthResponseStatus.NoConnection:
                _view.ShowAlert(string.Empty, _authLocaleStrings.OK, _authLocaleStrings.NoConnection);
                break;

            case EAuthResponseStatus.UnprocessableEntity:
                _view.ShowAlert(string.Empty, _authLocaleStrings.OK, _authLocaleStrings.FacebookAuthError);
                break;

            default:
                _view.ShowAlert(string.Empty, _authLocaleStrings.OK, _authLocaleStrings.AuthError);
                break;
            }
        }
예제 #2
0
        public void CheckAuthStateFailTest(EAuthResponseStatus status)
        {
            _viewMock.Setup(f => f.ShowAlert(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()));
            _viewMock.Setup(f => f.SetInteractionAvailable());

            _authLocaleStrings.SetupGet(f => f.AuthError).Returns(It.IsAny <string>());
            _authLocaleStrings.SetupGet(f => f.OK).Returns(It.IsAny <string>());


            _interactorMock.Setup(f => f.GetRepository().LangRA.AuthError).Returns(It.IsAny <string>());
            var presenter = new PresenterAuth(_viewMock.Object, _interactorMock.Object, _routerMock.Object, null, null, null, null, _styleHolderMock.Object, _authLocaleStrings.Object);

            presenter.CheckAuthState(status);

            _viewMock.Verify(f => f.ShowAlert(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()));
        }