public void RegisterShould_CallProviderRegisterAndLoginUserCorrectly_WhenModelStateIsValid(string email, string username, string password, string firstName, string lastName, string phoneNumber) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); authProviderMock.Setup( p => p.RegisterAndLoginUser(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>())) .Returns(IdentityResult.Success); var user = new User(); userServiceMock.Setup(f => f.CreateUser(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(user); var model = new RegisterViewModel { Email = email, Username = username, Password = password }; controller.Register(model); authProviderMock.Verify(p => p.RegisterAndLoginUser(user, password, It.IsAny <bool>(), It.IsAny <bool>())); }
public void RegisterShould_ReturnRedirectToRouteResult_WhenResultSuccess(string email, string username, string password, string firstName, string lastName, string phoneNumber) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); authProviderMock.Setup( p => p.RegisterAndLoginUser(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>())) .Returns(IdentityResult.Success); var user = new User(); userServiceMock.Setup(f => f.CreateUser(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(user); var model = new RegisterViewModel { Email = email, Username = username, Password = password }; controller .WithCallTo(c => c.Register(model)) .ShouldRedirectTo((Web.Controllers.HomeController c) => c.Index()); }
public void ProfileShould_ReturnDefaultView_WhenUserWasFound(string username) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var user = new User() { UserName = username }; var list = new List <User>() { user }; userServiceMock.Setup(s => s.GetUserByUsername(username)).Returns(list.AsQueryable()); InitializeMapper(); authProviderMock.Setup(ap => ap.CurrentUserUsername).Returns(username); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); var model = new ProfileViewModel() { IsCurrentUser = true }; controller .WithCallTo(c => c.Profile(username)) .ShouldRenderDefaultView(); }
public void RegisterShould_ReturnViewWithModel_WhenModelIsNotValid(string email, string username, string password, string firstName, string lastName, string phoneNumber) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); authProviderMock.Setup( p => p.RegisterAndLoginUser(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>())) .Returns(IdentityResult.Success); var user = new User(); var mockedFactory = new Mock <IUserService>(); mockedFactory.Setup(f => f.CreateUser(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(user); var model = new RegisterViewModel { Email = email, Username = username, Password = password }; controller.ModelState.AddModelError("key", "message"); controller .WithCallTo(c => c.Register(model)) .ShouldRenderDefaultView() .WithModel <RegisterViewModel>(m => Assert.AreSame(model, m)); }
public void ConstructorShould_SetPassedData_WhenDataIsNotNull() { var authProviderMock = new Mock <IAuthenticationProvider>(); var mockedFactory = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, mockedFactory.Object); Assert.IsNotNull(controller); }
public void RegisterShould_ReturnDefaultView() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller .WithCallTo(c => c.Register()) .ShouldRenderDefaultView(); }
public void LoginShould_CallAuthProviderPropertyIsAuthenticated() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller.Login(); authProviderMock.Verify(p => p.IsAuthenticated, Times.Once); }
public void LogoffShould_ReturnRedirectToAction() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller .WithCallTo(c => c.LogOff()) .ShouldRedirectTo((Web.Controllers.HomeController homeController) => homeController.Index()); }
public void LogoffShould_CallProviderMethodSignOut() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller.LogOff(); authProviderMock.Verify(p => p.SignOut(), Times.Once); }
public void ProfileShould_ReturnErrorView_WhenPassedUsernameIsNull() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); InitializeMapper(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller .WithCallTo(c => c.Profile(null)) .ShouldRenderView("Error"); }
public void LoginShould_RedirectToActionHomeIndex_WhenProviderIsAuthenticatedIsTrue() { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); authProviderMock.Setup(p => p.IsAuthenticated).Returns(true); var result = controller.Login(); Assert.IsInstanceOf <RedirectToRouteResult>(result); }
public void ProfileShould_CallUserServiceMethodGetUserByUsername_WhenPassedUsernameIsNotNull(string username) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); InitializeMapper(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller.Profile(username); userServiceMock.Verify(s => s.GetUserByUsername(username), Times.Once); }
public void ProfileShould_ReturnErrorView_WhenUserWasNotFound(string username) { var authProviderMock = new Mock <IAuthenticationProvider>(); var userServiceMock = new Mock <IUserService>(); var emptyList = new List <User>(); userServiceMock.Setup(s => s.GetUserByUsername(username)).Returns(emptyList.AsQueryable()); InitializeMapper(); var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object); controller .WithCallTo(c => c.Profile(username)) .ShouldRenderView("Error"); }