private User ConvertUserPrincipalToUser(UserPrincipalExtension userPrincipalExtension) { BannerID bannerID = BannerID.CreateBannerID(userPrincipalExtension.ExtensionAttribute14); string fullName = String.Format("{0}, {1} {2}", userPrincipalExtension.Surname, userPrincipalExtension.GivenName, userPrincipalExtension.MiddleName); string samAccountName = userPrincipalExtension.SamAccountName; return(new User(bannerID, samAccountName, fullName)); }
public void SearchUserByBannerID_Returns_Null_If_Not_Found() { BannerID testBannerID = BannerID.CreateBannerID("A00000000"); var mockRepo = new Mock <IActiveDirectoryRepository>(); mockRepo.Setup(repo => repo.FindUserByBannerID(testBannerID)).Returns((User)null); UserAccountService userAccountService = new UserAccountService(mockRepo.Object); Assert.IsNull(userAccountService.SearchUserByBannerID(testBannerID)); }
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { try { return(BannerID.CreateBannerID((string)value)); } catch (BannerIDInvalidFormatException) { return(value); } }
public FakeActiveDirectoryRepository() { for (int x = 1; x < 10; x++) { BannerID bannerNumber = BannerID.CreateBannerID(("A0000000" + x)); String samAccountName = ("testuser" + x); String fullname = ("test, user " + x); User user = new User(bannerNumber, samAccountName, fullname); _users.Add(user); } }
public override ValidationResult Validate(object value, CultureInfo cultureInfo) { try { BannerID bannerID = BannerID.CreateBannerID((string)value); return(ValidationResult.ValidResult); } catch (BannerIDInvalidFormatException exception) { return(new ValidationResult(false, exception.Message)); } }
public void SearchUserBySamAccountName_Returns_Null_If_Not_Found() { BannerID testBannerID = BannerID.CreateBannerID("A00000000"); string testSamAccountName = "testSamAccount"; User testUser = new User(testBannerID, testSamAccountName, "test, user one"); var mockRepo = new Mock <IActiveDirectoryRepository>(); mockRepo.Setup(repo => repo.FindUserByBannerID(testBannerID)).Returns((User)null); UserAccountService userAccountService = new UserAccountService(mockRepo.Object); User recievedUser = userAccountService.SearchUserBySamAccountName(testSamAccountName); Assert.IsNull(recievedUser); }
public void SearchUserByBannerID_Returns_User_If_Found() { BannerID testBannerID = BannerID.CreateBannerID("A00000000"); User testUser = new User(testBannerID, "testSamAccount", "test, user one"); var mockRepo = new Mock <IActiveDirectoryRepository>(); mockRepo.Setup(repo => repo.FindUserByBannerID(testBannerID)).Returns(testUser); UserAccountService userAccountService = new UserAccountService(mockRepo.Object); User recievedUser = userAccountService.SearchUserByBannerID(testBannerID); Assert.IsNotNull(recievedUser); Assert.AreEqual <BannerID>(testUser.BannerID, recievedUser.BannerID); Assert.AreEqual(testUser.SamAccountName, recievedUser.SamAccountName); Assert.AreEqual(testUser.FullName, recievedUser.FullName); }
public void ChangeUserPassword_Returns_ResetResult_With_Failure_When_Entered_User_Does_Not_Exist() { BannerID testBannerID = BannerID.CreateBannerID("A00000001"); string testSamAccountName = "testSamAccount"; string newPassword = "******"; User testEnteredUser = new User(testBannerID, testSamAccountName, "test, user one"); var mockRepo = new Mock <IActiveDirectoryRepository>(); mockRepo.Setup(repo => repo.FindUserByBannerID(testEnteredUser.BannerID)).Returns((User)null); UserAccountService userAccountService = new UserAccountService(mockRepo.Object); ResetResult result = userAccountService.ChangeUserPassword(testEnteredUser, newPassword); Assert.IsTrue(result.HasErrorMessage); Assert.AreEqual(testEnteredUser, result.User); }
public void ResetPasswordCommand_Notifies_Of_Error_If_Both_Password_Fields_Do_Not_Match() { User _testUser = new User(BannerID.CreateBannerID("A00000001"), "samAccountName", "test, user 1"); PasswordResetViewModel _viewModel = new PasswordResetViewModel(new Mock <IUserAccountService>().Object); string newPassword = "******"; string nonMatchingPassword = "******"; _viewModel.NewPassword = newPassword; _viewModel.ConfirmPassword = nonMatchingPassword; _viewModel.ResetPasswordCommand.Execute(null); Assert.IsTrue(_viewModel.HasErrors); IEnumerator errorEnumerator = _viewModel.GetErrors("NewPassword").GetEnumerator(); errorEnumerator.MoveNext(); Assert.AreEqual("New Password Does Not Match Confirmation Password", errorEnumerator.Current); }
public void ChangeUserPassword_Returns_ResetResult_With_No_Failures() { BannerID testBannerID = BannerID.CreateBannerID("A00000000"); string testSamAccountName = "testSamAccount"; string newPassword = "******"; User testUser = new User(testBannerID, testSamAccountName, "test, user one"); var mockRepo = new Mock <IActiveDirectoryRepository>(); mockRepo.Setup(repo => repo.FindUserByBannerID(testUser.BannerID)).Returns(testUser); mockRepo.Setup(repo => repo.ChangeUserPassword(testUser, newPassword)).Returns(true); mockRepo.Setup(repo => repo.ChangeUserResetAttribute(testUser)).Returns(true); UserAccountService userAccountService = new UserAccountService(mockRepo.Object); ResetResult result = userAccountService.ChangeUserPassword(testUser, newPassword); Assert.IsFalse(result.HasErrorMessage); Assert.AreEqual(testUser, result.User); }
public void PasswordResetCommand_Calls_ChangeUserPassword_In_UserAccountService_If_Both_Password_Fields_Match() { User _testUser = new User(BannerID.CreateBannerID("A00000001"), "samAccountName", "test, user 1"); ResetResult testResult = new ResetResult(_testUser, true, null); string newPassword = "******"; string matchingPassword = "******"; var mockAccountService = new Mock <IUserAccountService>(); mockAccountService.Setup(service => service.ChangeUserPassword(It.IsAny <User>(), It.IsAny <string>())).Returns(testResult).Verifiable(); PasswordResetViewModel _viewModel = new PasswordResetViewModel(mockAccountService.Object) { NewPassword = newPassword, ConfirmPassword = matchingPassword }; _viewModel.ResetPasswordCommand.Execute(null); Mock.Verify(mockAccountService); }
public void SearchUserByBannerIDCommand_Sends_UserNotFoundMessage_If_User_Is_Not_Found() { BannerID bannerID = BannerID.CreateBannerID("A00000001"); UserNotFoundMessage userNotFoundMessage = null; Messenger.Default.Register <UserNotFoundMessage>(this, msg => userNotFoundMessage = msg); var mockAccountService = new Mock <IUserAccountService>(); mockAccountService.Setup(service => service.SearchUserByBannerID(It.IsAny <BannerID>())).Returns((User)null); BannerIDSearchViewModel viewModel = new BannerIDSearchViewModel(mockAccountService.Object) { BannerID = bannerID }; viewModel.SearchUserByBannerIDCommand.Execute(null); Assert.IsNotNull(userNotFoundMessage); Assert.AreEqual(bannerID, userNotFoundMessage.BannerID); }
public void SearchUserByBannerIDCommand_Sends_UserDetailsMessage_If_User_Is_Found() { string expectedSamAccountName = "samAccountName"; string expectedFullName = "test, user name"; BannerID bannerID = BannerID.CreateBannerID("A00000001"); User expectedUser = new User(bannerID, expectedSamAccountName, expectedFullName); UserDetailsMessage userDetailsMessage = null; Messenger.Default.Register <UserDetailsMessage>(this, msg => userDetailsMessage = msg); var mockAccountService = new Mock <IUserAccountService>(); mockAccountService.Setup(service => service.SearchUserByBannerID(It.IsAny <BannerID>())).Returns(expectedUser); BannerIDSearchViewModel viewModel = new BannerIDSearchViewModel(mockAccountService.Object) { BannerID = bannerID }; viewModel.SearchUserByBannerIDCommand.Execute(null); Assert.IsNotNull(userDetailsMessage); Assert.AreEqual(expectedUser, userDetailsMessage.User); }
public void Failed_Reset_Sends_PasswordChangeSuccessMessage_With_False() { User _testUser = new User(BannerID.CreateBannerID("A00000001"), "samAccountName", "test, user 1"); ResetResult testResult = new ResetResult(_testUser, false, "failure"); var mockAccountService = new Mock <IUserAccountService>(); mockAccountService.Setup(service => service.ChangeUserPassword(It.IsAny <User>(), It.IsAny <string>())).Returns(testResult); PasswordResetViewModel _viewModel = new PasswordResetViewModel(mockAccountService.Object); string newPassword = "******"; string matchingPassword = "******"; _viewModel.NewPassword = newPassword; _viewModel.ConfirmPassword = matchingPassword; PasswordChangeSuccessMessage passwordChangeSuccessMessage = null; Messenger.Default.Register <PasswordChangeSuccessMessage>(this, msg => passwordChangeSuccessMessage = msg); _viewModel.ResetPasswordCommand.Execute(null); Assert.IsNotNull(passwordChangeSuccessMessage); Assert.IsFalse(passwordChangeSuccessMessage.ResetResult.PasswordChanged); }
public void BannerID_Throws_Error_If_Does_Not_Start_With_An_A() { String failingBannerIDValue = "B12345678"; BannerID result = BannerID.CreateBannerID(failingBannerIDValue); }
public void BannerID_Throws_Error_If_More_Than_Nine_Characters_Long() { String failingBannerIDValue = "1234567890"; BannerID result = BannerID.CreateBannerID(failingBannerIDValue); }