public void AuthInteractorOnLoginNullLoginTest(string login, string password) { var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); presenter.Setup(t => t.LoginFail(LoginFailType.Error)); IAuthInteractor interactor = new AuthInteractor(new Mock <IUserDataService>().Object, presenter.Object); Assert.Throws <ArgumentNullException>(() => presenter.Raise(t => t.OnLogInAttempt += null, login, password)); //presenter.Verify(t => t.LoginFail(LoginFailType.Error)); }
public void AuthInteractorOnSingUpEventHandlingTest() { var service = new Mock <IUserDataService>(MockBehavior.Strict); var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); presenter.Setup(t => t.SignUpAllowed()); IAuthInteractor interactor = new AuthInteractor(service.Object, presenter.Object); presenter.Raise(t => t.OnSignUpAttempt += null); presenter.Verify(t => t.SignUpAllowed(), Times.Once); }
[TestCase("thisIsReallyLongPasswordForTestingIfInteractorValidatesPasswordMaximumLengthAccordingToProvidedBusinessRequirementsAndReturnsCorrectErrorInResponse", LoginFailType.PasswordWrongFormat)] //longer than max length public void ValidateNotCorrectPasswordTest(string password, LoginFailType code) { string testLogin = "******"; string testPassword = password; var service = new Mock <IUserDataService>(MockBehavior.Strict); var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); presenter.Setup(t => t.LoginFail(code)); IAuthInteractor interactor = new AuthInteractor(service.Object, presenter.Object); presenter.Raise(t => t.OnLogInAttempt += null, testLogin, testPassword); presenter.Verify(t => t.LoginFail(code), Times.Once); }
public void AuthInteractorOnLoginEventHandlingWrongLoginTest() { string testLogin = "******"; string testPassword = "******"; var service = new Mock <IUserDataService>(MockBehavior.Strict); var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); LoginFailType code = LoginFailType.WrongLogin; service.Setup(t => t.AuthorizeUser(testLogin, testPassword, out code)).Returns((string)null);; presenter.Setup(t => t.LoginFail(LoginFailType.WrongLogin)); IAuthInteractor interactor = new AuthInteractor(service.Object, presenter.Object); presenter.Raise(t => t.OnLogInAttempt += null, testLogin, testPassword); service.Verify(t => t.AuthorizeUser(testLogin, testPassword, out code), Times.Once); presenter.Verify(t => t.LoginFail(LoginFailType.WrongLogin), Times.Once); }
public void AuthInteractorOnLoginEventHandlingUnknownErrorTest() { string testLogin = "******"; string testPassword = "******"; var service = new Mock <IUserDataService>(MockBehavior.Strict); var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); LoginFailType code = LoginFailType.Error; service.Setup(t => t.AuthorizeUser(testLogin, testPassword, out code)).Throws <Exception>(); presenter.Setup(t => t.LoginFail(LoginFailType.Error)); IAuthInteractor interactor = new AuthInteractor(service.Object, presenter.Object); presenter.Raise(t => t.OnLogInAttempt += null, testLogin, testPassword); service.Verify(t => t.AuthorizeUser(testLogin, testPassword, out code), Times.Once); presenter.Verify(t => t.LoginFail(LoginFailType.Error), Times.Once); }
public void AuthInteractorOnLoginEventHandlingTest() { string testSessionId = "10293847561213"; string testLogin = "******"; string testPassword = "******"; string testUserId = "4825557"; var service = new Mock <IUserDataService>(MockBehavior.Strict); var presenter = new Mock <IAuthPresenter>(MockBehavior.Strict); LoginFailType code = LoginFailType.None; service.Setup(t => t.AuthorizeUser(testLogin, testPassword, out code)).Returns(testSessionId); service.Setup(t => t.GetUserIdBySessionId(testSessionId)).Returns(testUserId); presenter.Setup(t => t.LoginSuccess(testSessionId, testUserId)); IAuthInteractor interactor = new AuthInteractor(service.Object, presenter.Object); presenter.Raise(t => t.OnLogInAttempt += null, testLogin, testPassword); service.Verify(t => t.AuthorizeUser(testLogin, testPassword, out code), Times.Once); service.Verify(t => t.GetUserIdBySessionId(testSessionId), Times.Once); presenter.Verify(t => t.LoginSuccess(testSessionId, testUserId), Times.Once); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); View view = LayoutInflater.Inflate(Resource.Layout.AuthorizationLayout, null, false); //Initializing Viper AuthorizationView authView = view as AuthorizationView; authView.InitializeAuthView(); /* DetailedInfoFacadeView detailedInfoView = view as DetailedInfoFacadeView; * string entityId = Intent.GetStringExtra(EntityId_ExtraKey); * IDetailsPresenter presenter = new DetailedInfoPresenter(detailedInfoView, new DetailedInfoInteractor(RepositoryFactory.service, entityId), new DetailedInfoRouter(this)); * detailedInfoView.InitializeView(presenter, entityId == "TempEntityId");*/ IAuthPresenter authPresenter = new AuthPresenter(authView, new AuthRouter(this)); IAuthInteractor authInteractor = new AuthInteractor(new UserDataService(), authPresenter); SetContentView(view); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); _app = (AuthApp)Application; // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); var request = new Request(); var interactor = new AuthInteractor(request); var btnLogin = FindViewById <Button>(Resource.Id.button_login); var txtLogin = FindViewById <EditText>(Resource.Id.editText_login); var txtPass = FindViewById <EditText>(Resource.Id.editText_pass); var presenter = new AuthPresenter(interactor, this, this); btnLogin.Click += (sender, args) => { presenter.Authorize(txtLogin.Text, txtPass.Text); }; // Get our button from the layout resource, // and attach an event to it }
private void InitializeViper() { IAuthPresenter presenter = new AuthPresenter(_authPageView, new AuthRouter(NavigationController)); IAuthInteractor interactor = new AuthInteractor(new UserDataService(), presenter); }
public override void OnCreate() { base.OnCreate(); Request = new Request(); Interactor = new AuthInteractor(Request); }
public AuthController(AuthInteractor authInteractor) { _authInteractor = authInteractor; }