public void CreateNotValid() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); const string tos = "blah blah blah"; var settings = new Settings { TermsOfService = tos }; _settingsManager.Setup(s => s.Current).Returns(settings); _userService.Setup(u => u.IsEmailInUse(It.IsAny <string>())).Returns(true); _userService.Setup(u => u.IsNameInUse(It.IsAny <string>())).Returns(true); var signUp = new SignupData { Email = "*****@*****.**", IsCoppa = true, IsDaylightSaving = true, IsSubscribed = true, IsTos = true, Name = "Diana", Password = "******", PasswordRetype = "pwd", TimeZone = -5 }; var result = controller.Create(signUp).Result; Assert.IsFalse(controller.ModelState.IsValid); Assert.IsInstanceOf <ViewResult>(result); Assert.IsInstanceOf <String>(controller.ViewData[AccountController.CoppaDateKey]); Assert.IsInstanceOf <String>(controller.ViewData[AccountController.TosKey]); Assert.AreEqual(tos, controller.ViewData[AccountController.TosKey]); _userService.Verify(u => u.CreateUser(It.IsAny <SignupData>(), It.IsAny <string>()), Times.Never()); _profileService.Verify(p => p.Create(It.IsAny <User>(), It.IsAny <SignupData>()), Times.Never()); _newAccountMailer.Verify(n => n.Send(It.IsAny <User>(), It.IsAny <string>()), Times.Never()); }
private HttpContextHelper GetHelper() { var helper = new HttpContextHelper(); helper.MockRequest.Setup(r => r.Cookies).Returns(new HttpCookieCollection()); helper.MockResponse.Setup(r => r.Cookies).Returns(new HttpCookieCollection()); return helper; }
public void LoginAndAssociateSuccess() { const string email = "*****@*****.**"; const string password = "******"; var user = new User(12, DateTime.MaxValue) { Email = email }; const bool persist = true; var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(x => x.UserHostAddress).Returns(String.Empty); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.Login(email, password, persist, contextHelper.MockContext.Object)).Returns(true); _userService.Setup(x => x.GetUserByEmail(email)).Returns(user); var authManager = new Mock <IAuthenticationManager>(); _owinContext.Setup(x => x.Authentication).Returns(authManager.Object); var externalAuthResult = new ExternalAuthenticationResult(); var authResult = Task.FromResult(externalAuthResult); _externalAuth.Setup(x => x.GetAuthenticationResult(authManager.Object)).Returns(authResult); var result = controller.LoginAndAssociate(email, password, persist).Result; _userAssociation.Verify(x => x.Associate(user, authResult.Result, It.IsAny <string>())); _userService.Verify(u => u.Login(email, password, persist, contextHelper.MockContext.Object), Times.Once()); Assert.IsInstanceOf <JsonResult>(result); var resultObject = (BasicJsonMessage)result.Data; Assert.IsTrue(resultObject.Result); }
public void EmailPostForbiddenWhenNoUser() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); controller.EmailUser(654, "blah", "mah message"); context.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.Forbidden); }
private void MockUpUrl(AccountController controller) { var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.Url).Returns(new Uri("http://foo/")); contextHelper.MockRequestContext.Setup(r => r.HttpContext).Returns(new Mock <HttpContextBase>().Object); contextHelper.MockRequestContext.Setup(r => r.RouteData).Returns(new RouteData()); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); }
public void UserCanSeeSubTopics() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = new User(2, DateTime.MinValue); controller.SetUser(user); var result = controller.Topics(); Assert.IsInstanceOf<PagedTopicContainer>(result.ViewData.Model); }
public void ManagePhotosViewNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.ManagePhotos(); Assert.AreEqual("EditAccountNoUser", result.ViewName); }
public void ChangeEmailNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.ChangeEmail(new UserEditSecurity()); Assert.AreEqual("EditAccountNoUser", result.ViewName); }
private UserSessionService GetService() { _mockSettingsManager = new Mock<ISettingsManager>(); _mockUserRepo = new Mock<IUserRepository>(); _mockUserSessionRepo = new Mock<IUserSessionRepository>(); _mockSecurityLogService = new Mock<ISecurityLogService>(); _contextHelper = new HttpContextHelper(); var service = new UserSessionService(_mockSettingsManager.Object, _mockUserRepo.Object, _mockUserSessionRepo.Object, _mockSecurityLogService.Object); return service; }
public void NotFoundActionResult() { var controller = new TestController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var guid = Guid.NewGuid(); var result = controller.NotFound("blah", guid); Assert.IsInstanceOf<ViewResult>(result); Assert.AreEqual("blah", result.ViewName); Assert.AreEqual(guid, result.ViewData.Model); contextHelper.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.NotFound); }
public void VerifyNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.VerifyAuthorizationCode(It.IsAny <Guid>(), It.IsAny <string>())).Returns((User)null); var result = controller.Verify(Guid.NewGuid().ToString()); Assert.AreEqual("VerifyFail", result.ViewName); }
public void ViewProfile404ForNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(x => x.GetUser(It.IsAny <int>())).Returns((User)null); var result = controller.ViewProfile(123); Assert.AreEqual("NotFound", result.ViewName); contextHelper.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.NotFound); }
public void DeleteRole() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.DeleteRole("blah"); _userService.Verify(u => u.DeleteRole("blah", It.IsAny <User>(), It.IsAny <string>()), Times.Once()); Assert.IsInstanceOf <RedirectToRouteResult>(result); }
public void LogoutAsync() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.LogoutAsync(); _userService.Verify(u => u.Logout(It.IsAny<User>(), It.IsAny<string>()), Times.Once()); var resultObject = (BasicJsonMessage)result.Data; Assert.IsTrue(resultObject.Result); }
public void ManagePhotosNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.ManagePhotos(new UserEditPhoto { DeleteAvatar = true, DeleteImage = true }); _userService.Verify(u => u.EditUserProfileImages(It.IsAny <User>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <HttpPostedFileBase>(), It.IsAny <HttpPostedFileBase>()), Times.Never()); Assert.AreEqual("EditAccountNoUser", ((ViewResult)result).ViewName); }
public void EmailPostNotFoundWhenUserDoesntExist() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.GetUser(It.IsAny <int>())).Returns((User)null); controller.EmailUser(987, "blah", "mah message"); context.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.NotFound); }
public void UserCanSeeSubTopics() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = new User(2, DateTime.MinValue); controller.SetUser(user); var result = controller.Topics(); Assert.IsInstanceOf <PagedTopicContainer>(result.ViewData.Model); }
public void DeleteAndBanUser() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var targetUser = new User(1, DateTime.MinValue); var user = new User(2, DateTime.MinValue); _userService.Setup(u => u.GetUser(1)).Returns(targetUser); controller.SetUser(user); controller.DeleteAndBanUser(1); _userService.Verify(u => u.DeleteUser(targetUser, user, It.IsAny <string>(), true)); }
public void LogoutAsync() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.LogoutAsync(); _userService.Verify(u => u.Logout(It.IsAny <User>(), It.IsAny <string>()), Times.Once()); var resultObject = (BasicJsonMessage)result.Data; Assert.IsTrue(resultObject.Result); }
public void ClientSettingsFromMapperWithUser() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var profile = new Profile(); _profileService.Setup(p => p.GetProfile(user)).Returns(profile); controller.ClientSettings(); _clientSettingsMapper.Verify(c => c.GetClientSettings(profile), Times.Exactly(1)); }
public void EditProfile() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var userEdit = new UserEditProfile(); var result = controller.EditProfile(userEdit); _userService.Verify(u => u.EditUserProfile(user, userEdit), Times.Once()); Assert.IsNotNullOrEmpty(result.ViewData["Result"].ToString()); }
public void EmailPostForbiddenWhenUserHidesDetails() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var toUser = new User(124, DateTime.MinValue); _userService.Setup(u => u.GetUser(toUser.UserID)).Returns(toUser); _userEmailer.Setup(u => u.IsUserEmailable(toUser)).Returns(false); controller.EmailUser(toUser.UserID, "blah", "mah message"); context.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.Forbidden); }
public void Verify() { var user = UserTest.GetTestUser(); user.AuthorizationKey = Guid.NewGuid(); var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.VerifyAuthorizationCode(user.AuthorizationKey, It.IsAny <string>())).Returns(user); var result = controller.Verify(user.AuthorizationKey.ToString()); Assert.IsNotNullOrEmpty(result.ViewData["Result"].ToString()); Assert.AreEqual(String.Empty, result.ViewName); }
public void EmailPostCallsMailer() { var controller = GetController(); var context = new HttpContextHelper(); context.MockRequest.Setup(r => r.UserHostAddress).Returns("1.1.1.1"); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var toUser = new User(124, DateTime.MinValue); _userService.Setup(u => u.GetUser(toUser.UserID)).Returns(toUser); _userEmailer.Setup(u => u.IsUserEmailable(toUser)).Returns(true); controller.EmailUser(toUser.UserID, "blah", "mah message"); _userEmailer.Verify(u => u.ComposeAndQueue(toUser, user, "1.1.1.1", "blah", "mah message"), Times.Exactly(1)); }
public void EditSecurityView() { var controller = GetController(); var settings = new Mock <Settings>(); settings.Setup(x => x.IsNewUserApproved).Returns(true); _settingsManager.Setup(x => x.Current).Returns(settings.Object); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var result = controller.Security(); Assert.IsInstanceOf <UserEditSecurity>(result.ViewData.Model); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); }
public void ChangeEmailMatchNoApproval() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _settingsManager.Setup(s => s.Current.IsNewUserApproved).Returns(true); var result = controller.ChangeEmail(new UserEditSecurity { NewEmail = "*****@*****.**", NewEmailRetype = "*****@*****.**" }); Assert.IsNotNullOrEmpty(result.ViewData["EmailResult"].ToString()); _userService.Verify(u => u.ChangeEmail(user, It.IsAny <string>(), It.IsAny <User>(), It.IsAny <string>()), Times.Once()); _newAccountMailer.Verify(n => n.Send(user, It.IsAny <string>()), Times.Never()); }
public void ManagePhotosView() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var profile = new Profile(user.UserID); _profileService.Setup(p => p.GetProfile(user)).Returns(profile); var result = controller.ManagePhotos(); Assert.IsInstanceOf <UserEditPhoto>(result.ViewData.Model); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _profileService.Verify(p => p.GetProfile(user), Times.Once()); }
public void ChangePasswordNoMatch() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny <string>())).Returns(true); var result = controller.ChangePassword(new UserEditSecurity { NewPassword = "******", NewPasswordRetype = "blah2" }); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <User>()), Times.Never()); }
public void ChangePasswordBadOldPassword() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny <string>())).Returns(false); _settingsManager.Setup(x => x.Current.IsNewUserApproved).Returns(true); var result = controller.ChangePassword(new UserEditSecurity { OldPassword = "******" }); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <User>()), Times.Never()); }
public void ManagePhotos() { var controller = GetController(); var context = new HttpContextHelper(); var mockFileCollection = new Mock <HttpFileCollectionBase>(); var avatar = new Mock <HttpPostedFileBase>(); var photo = new Mock <HttpPostedFileBase>(); mockFileCollection.Setup(f => f["avatarFile"]).Returns(avatar.Object); mockFileCollection.Setup(f => f["photoFile"]).Returns(photo.Object); context.MockRequest.Setup(r => r.Files).Returns(mockFileCollection.Object); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); controller.ManagePhotos(new UserEditPhoto { DeleteAvatar = true, DeleteImage = true }); _userService.Verify(u => u.EditUserProfileImages(user, true, true, avatar.Object, photo.Object), Times.Once()); }
public void ChangePasswordMatchAndValid() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny <string>())).Returns(true); _userService.Setup(u => u.IsPasswordValid(It.IsAny <string>(), It.IsAny <ModelStateDictionary>())).Returns(true); var password = "******"; var result = controller.ChangePassword(new UserEditSecurity { NewPassword = password, NewPasswordRetype = password }); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(user, password, It.IsAny <string>(), user), Times.Once()); _userService.Verify(u => u.IsPasswordValid(password, It.IsAny <ModelStateDictionary>()), Times.Once()); }
public void ChangePasswordFailsRules() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny <string>())).Returns(true); _userService.Setup(u => u.IsPasswordValid(It.IsAny <string>(), It.IsAny <ModelStateDictionary>())).Returns(false).Callback <string, ModelStateDictionary>((p, m) => m.AddModelError("Password", "whatever")); var password = "******"; _settingsManager.Setup(x => x.Current.IsNewUserApproved).Returns(true); var result = controller.ChangePassword(new UserEditSecurity { NewPassword = password, NewPasswordRetype = password }); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(user, password, It.IsAny <string>(), It.IsAny <User>()), Times.Never()); _userService.Verify(u => u.IsPasswordValid(password, It.IsAny <ModelStateDictionary>()), Times.Once()); }
public void EditUser() { var controller = GetController(); var context = new HttpContextHelper(); var mockFileCollection = new Mock <HttpFileCollectionBase>(); var avatar = new Mock <HttpPostedFileBase>(); var photo = new Mock <HttpPostedFileBase>(); mockFileCollection.Setup(f => f["avatarFile"]).Returns(avatar.Object); mockFileCollection.Setup(f => f["photoFile"]).Returns(photo.Object); context.MockRequest.Setup(r => r.Files).Returns(mockFileCollection.Object); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var targetUser = new User(1, DateTime.MinValue); var user = new User(2, DateTime.MinValue); var userEdit = new UserEdit { DeleteAvatar = true, DeleteImage = true }; _userService.Setup(u => u.GetUser(1)).Returns(targetUser); controller.SetUser(user); controller.EditUser(1, userEdit); _userService.Verify(u => u.EditUser(targetUser, userEdit, true, true, avatar.Object, photo.Object, It.IsAny <string>(), user), Times.Once()); }
public void CreateNotValid() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); const string tos = "blah blah blah"; var settings = new Settings {TermsOfService = tos}; _settingsManager.Setup(s => s.Current).Returns(settings); _userService.Setup(u => u.IsEmailInUse(It.IsAny<string>())).Returns(true); _userService.Setup(u => u.IsNameInUse(It.IsAny<string>())).Returns(true); var signUp = new SignupData {Email = "*****@*****.**", IsCoppa = true, IsDaylightSaving = true, IsSubscribed = true, IsTos = true, Name = "Diana", Password = "******", PasswordRetype = "pwd", TimeZone = -5}; var result = controller.Create(signUp).Result; Assert.IsFalse(controller.ModelState.IsValid); Assert.IsInstanceOf<ViewResult>(result); Assert.IsInstanceOf<String>(controller.ViewData[AccountController.CoppaDateKey]); Assert.IsInstanceOf<String>(controller.ViewData[AccountController.TosKey]); Assert.AreEqual(tos, controller.ViewData[AccountController.TosKey]); _userService.Verify(u => u.CreateUser(It.IsAny<SignupData>(), It.IsAny<string>()), Times.Never()); _profileService.Verify(p => p.Create(It.IsAny<User>(), It.IsAny<SignupData>()), Times.Never()); _newAccountMailer.Verify(n => n.Send(It.IsAny<User>(), It.IsAny<string>()), Times.Never()); }
public void ManagePhotos() { var controller = GetController(); var context = new HttpContextHelper(); var mockFileCollection = new Mock<HttpFileCollectionBase>(); var avatar = new Mock<HttpPostedFileBase>(); var photo = new Mock<HttpPostedFileBase>(); mockFileCollection.Setup(f => f["avatarFile"]).Returns(avatar.Object); mockFileCollection.Setup(f => f["photoFile"]).Returns(photo.Object); context.MockRequest.Setup(r => r.Files).Returns(mockFileCollection.Object); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); controller.ManagePhotos(new UserEditPhoto{ DeleteAvatar = true, DeleteImage = true }); _userService.Verify(u => u.EditUserProfileImages(user, true, true, avatar.Object, photo.Object), Times.Once()); }
public void ChangePasswordMatchAndValid() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny<string>())).Returns(true); _userService.Setup(u => u.IsPasswordValid(It.IsAny<string>(), It.IsAny<ModelStateDictionary>())).Returns(true); var password = "******"; _settingsManager.Setup(x => x.Current.IsNewUserApproved).Returns(true); var result = controller.ChangePassword(new UserEditSecurity { NewPassword = password, NewPasswordRetype = password }); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(user, password, It.IsAny<string>(), user), Times.Once()); _userService.Verify(u => u.IsPasswordValid(password, It.IsAny<ModelStateDictionary>()), Times.Once()); }
public void ManagePhotosView() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var profile = new Profile(user.UserID); _profileService.Setup(p => p.GetProfile(user)).Returns(profile); var result = controller.ManagePhotos(); Assert.IsInstanceOf<UserEditPhoto>(result.ViewData.Model); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _profileService.Verify(p => p.GetProfile(user), Times.Once()); }
public void EditUser() { var controller = GetController(); var context = new HttpContextHelper(); var mockFileCollection = new Mock<HttpFileCollectionBase>(); var avatar = new Mock<HttpPostedFileBase>(); var photo = new Mock<HttpPostedFileBase>(); mockFileCollection.Setup(f => f["avatarFile"]).Returns(avatar.Object); mockFileCollection.Setup(f => f["photoFile"]).Returns(photo.Object); context.MockRequest.Setup(r => r.Files).Returns(mockFileCollection.Object); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var targetUser = new User(1, DateTime.MinValue); var user = new User(2, DateTime.MinValue); var userEdit = new UserEdit {DeleteAvatar = true, DeleteImage = true}; _userService.Setup(u => u.GetUser(1)).Returns(targetUser); controller.SetUser(user); controller.EditUser(1, userEdit); _userService.Verify(u => u.EditUser(targetUser, userEdit, true, true, avatar.Object, photo.Object, It.IsAny<string>(), user), Times.Once()); }
public void DeleteRole() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.DeleteRole("blah"); _userService.Verify(u => u.DeleteRole("blah", It.IsAny<User>(), It.IsAny<string>()), Times.Once()); Assert.IsInstanceOf<RedirectToRouteResult>(result); }
public void ViewProfile404ForNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(x => x.GetUser(It.IsAny<int>())).Returns((User) null); var result = controller.ViewProfile(123); Assert.AreEqual("NotFound", result.ViewName); contextHelper.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.NotFound); }
public void EditSecurityView() { var controller = GetController(); var settings = new Mock<Settings>(); settings.Setup(x => x.IsNewUserApproved).Returns(true); _settingsManager.Setup(x => x.Current).Returns(settings.Object); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); var result = controller.Security(); Assert.IsInstanceOf<UserEditSecurity>(result.ViewData.Model); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); }
private void MockUpUrl(AccountController controller) { var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.Url).Returns(new Uri("http://foo/")); contextHelper.MockRequestContext.Setup(r => r.HttpContext).Returns(new Mock<HttpContextBase>().Object); contextHelper.MockRequestContext.Setup(r => r.RouteData).Returns(new RouteData()); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); }
public void EmailPostNotFoundWhenUserDoesntExist() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.GetUser(It.IsAny<int>())).Returns((User)null); controller.EmailUser(987, "blah", "mah message"); context.MockResponse.VerifySet(r => r.StatusCode = (int)HttpStatusCode.NotFound); }
public void ManagePhotosNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var result = controller.ManagePhotos(new UserEditPhoto { DeleteAvatar = true, DeleteImage = true }); _userService.Verify(u => u.EditUserProfileImages(It.IsAny<User>(), It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<HttpPostedFileBase>(), It.IsAny<HttpPostedFileBase>()), Times.Never()); Assert.AreEqual("EditAccountNoUser", ((ViewResult)result).ViewName); }
public void VerifyNoUser() { var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.VerifyAuthorizationCode(It.IsAny<Guid>(), It.IsAny<string>())).Returns((User)null); var result = controller.Verify(Guid.NewGuid().ToString()); Assert.AreEqual("VerifyFail", result.ViewName); }
public void Verify() { var user = UserTest.GetTestUser(); user.AuthorizationKey = Guid.NewGuid(); var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(r => r.UserHostAddress).Returns("123"); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.VerifyAuthorizationCode(user.AuthorizationKey, It.IsAny<string>())).Returns(user); var result = controller.Verify(user.AuthorizationKey.ToString()); Assert.IsNotNullOrEmpty(result.ViewData["Result"].ToString()); Assert.AreEqual(String.Empty, result.ViewName); }
public void DeleteAndBanUser() { var controller = GetController(); var context = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(context.MockContext.Object, new RouteData(), controller); var targetUser = new User(1, DateTime.MinValue); var user = new User(2, DateTime.MinValue); _userService.Setup(u => u.GetUser(1)).Returns(targetUser); controller.SetUser(user); controller.DeleteAndBanUser(1); _userService.Verify(u => u.DeleteUser(targetUser, user, It.IsAny<string>(), true)); }
public void ChangePasswordNoMatch() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _userService.Setup(u => u.VerifyPassword(user, It.IsAny<string>())).Returns(true); _settingsManager.Setup(x => x.Current.IsNewUserApproved).Returns(true); var result = controller.ChangePassword(new UserEditSecurity{ NewPassword = "******", NewPasswordRetype = "blah2"}); Assert.IsNotNullOrEmpty(result.ViewData["PasswordResult"].ToString()); Assert.AreNotEqual("EditAccountNoUser", result.ViewName); _userService.Verify(u => u.SetPassword(It.IsAny<User>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<User>()), Times.Never()); }
public void LoginAndAssociateSuccess() { const string email = "*****@*****.**"; const string password = "******"; var user = new User(12, DateTime.MaxValue) {Email = email}; const bool persist = true; var controller = GetController(); var contextHelper = new HttpContextHelper(); contextHelper.MockRequest.Setup(x => x.UserHostAddress).Returns(String.Empty); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); _userService.Setup(u => u.Login(email, password, persist, contextHelper.MockContext.Object)).Returns(true); _userService.Setup(x => x.GetUserByEmail(email)).Returns(user); var authManager = new Mock<IAuthenticationManager>(); _owinContext.Setup(x => x.Authentication).Returns(authManager.Object); var externalAuthResult = new ExternalAuthenticationResult(); var authResult = Task.FromResult(externalAuthResult); _externalAuth.Setup(x => x.GetAuthenticationResult(authManager.Object)).Returns(authResult); var result = controller.LoginAndAssociate(email, password, persist).Result; _userAssociation.Verify(x => x.Associate(user, authResult.Result, It.IsAny<string>())); _userService.Verify(u => u.Login(email, password, persist, contextHelper.MockContext.Object), Times.Once()); Assert.IsInstanceOf<JsonResult>(result); var resultObject = (BasicJsonMessage)result.Data; Assert.IsTrue(resultObject.Result); }
public void ChangeEmailMatchNoApproval() { var controller = GetController(); var contextHelper = new HttpContextHelper(); controller.ControllerContext = new ControllerContext(contextHelper.MockContext.Object, new RouteData(), controller); var user = UserTest.GetTestUser(); controller.SetUser(user); _settingsManager.Setup(s => s.Current.IsNewUserApproved).Returns(true); var result = controller.ChangeEmail(new UserEditSecurity { NewEmail = "*****@*****.**", NewEmailRetype = "*****@*****.**" }); Assert.IsNotNullOrEmpty(result.ViewData["EmailResult"].ToString()); _userService.Verify(u => u.ChangeEmail(user, It.IsAny<string>(), It.IsAny<User>(), It.IsAny<string>()), Times.Once()); _newAccountMailer.Verify(n => n.Send(user, It.IsAny<string>()), Times.Never()); }