public void Backend_IdentityBackend_CreateNewSupportUser_Result_Failed_Should_Return_Null() { //arrange var testUsername = "******"; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUsername }; var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername)) .ReturnsAsync(dummyUser); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >(); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act //pass in a bad password, causes create failure var result = backend.CreateNewSupportUser(testUsername, "", testUsername); //assert Assert.IsNull(result, TestContext.TestName); }
public void Backend_IdentityBackend_DeleteUser_Uses_ID_Valid_User_Should_Pass() { //arrange var testUsername = "******"; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUsername }; var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.DeleteAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername)) .ReturnsAsync(dummyUser); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >(); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.DeleteUser(dummyUser.Id); //assert Assert.IsTrue(result, TestContext.TestName); }
public void Backend_IdentityBackend_AddClaimToUser_Failed_To_Find_User_Should_Fail() { //arrange var testUsername = "******"; var testUserId = "AGoodID"; var testClaimTypeToAdd = "testClaim"; var testClaimValueToAdd = "value"; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUserId }; var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >(); //.Setup(x => x.FindByIdAsync(testUserId)) //.ReturnsAsync(dummyUser); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >(); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.AddClaimToUser(testUserId, testClaimTypeToAdd, testClaimValueToAdd); //assert Assert.IsNull(result, TestContext.TestName); }
public void Backend_IdentityBackend_UpdateStudent_ID_Not_Found_Should_Fail() { //arrange var testUsername = "******"; var testUserID = "AGoodID"; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUserID }; var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUserID)) .ReturnsAsync(dummyUser); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); var testStudent = new StudentModel(); var badID = "bogus"; testStudent.Id = badID; //act var result = backend.UpdateStudent(testStudent); //assert Assert.IsFalse(result, TestContext.TestName); }
public void Backend_IdentityBackend_FindUserByUserName_Should_Pass() { //arrange var testUsername = "******"; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUsername }; var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByNameAsync(testUsername)) .ReturnsAsync(dummyUser); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.FindUserByUserName(testUsername); //assert Assert.AreEqual(dummyUser, result, TestContext.TestName); }
public void Backend_IdentityBackend_UpdateStudent_Null_Student_Should_Fail() { //arrange var backend = new IdentityDataSourceMock(); //act var result = backend.UpdateStudent(null); //assert Assert.IsFalse(result, TestContext.TestName); }
public void Backend_IdentityBackend_GetStudentById_Invalid_Student_ID_Should_Fail() { //arrange var backend = new IdentityDataSourceMock(); var fakeID = "bogus"; //act var result = backend.GetStudentById(fakeID); //assert Assert.IsNull(result, TestContext.TestName); }
public void Backend_IdentityBackend_RemoveClaimFromUser_Should_Pass() { //arrange var testUsername = "******"; var claimToRemove = _5051.Models.UserRoleEnum.TeacherUser.ToString(); IList <Claim> claimsList = new List <Claim>() { new Claim(_5051.Models.UserRoleEnum.TeacherUser.ToString(), "True"), new Claim(_5051.Models.UserRoleEnum.SupportUser.ToString(), "True"), }; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUsername }; var claimIdentity1 = new IdentityUserClaim() { ClaimType = _5051.Models.UserRoleEnum.TeacherUser.ToString(), ClaimValue = "True", }; var claimIdentity2 = new IdentityUserClaim() { ClaimType = "TeacherID", ClaimValue = testUsername, }; dummyUser.Claims.Add(claimIdentity1); dummyUser.Claims.Add(claimIdentity2); var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername)) .ReturnsAsync(dummyUser); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >() .Setup(x => x.GetClaimsAsync(dummyUser)) .Returns(Task.FromResult(claimsList)); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.RemoveClaimFromUser(testUsername, claimToRemove); //assert Assert.IsTrue(result, TestContext.TestName); }
public void Backend_IdentityBackend_CreateNewStudent_Valid_User_Should_Pass() { //arrange var testUsername = "******"; var expectedClaimCount = 2; var testStudent = new StudentModel { Name = testUsername, Id = testUsername }; var dummyUser = new ApplicationUser() { UserName = testUsername, Email = testUsername + "@seattleu.edu", Id = testUsername }; var claimIdentity1 = new IdentityUserClaim() { ClaimType = _5051.Models.UserRoleEnum.StudentUser.ToString(), ClaimValue = "True", }; var claimIdentity2 = new IdentityUserClaim() { ClaimType = "StudentID", ClaimValue = testStudent.Id, }; dummyUser.Claims.Add(claimIdentity1); dummyUser.Claims.Add(claimIdentity2); var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername)) .ReturnsAsync(dummyUser); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >(); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.CreateNewStudent(testStudent); //assert Assert.AreEqual(testUsername, result.UserName, TestContext.TestName); Assert.AreEqual(expectedClaimCount, result.Claims.Count, TestContext.TestName); }
public void Backend_IdentityBackend_GetStudentById_Valid_Student_Should_Pass() { //arrange var backend = new IdentityDataSourceMock(); var expectStudent = DataSourceBackend.Instance.StudentBackend.GetDefault(); //var dataSourceBack = DataSourceBackend.Instance; //dataSourceBack.SetTestingMode(true); //var expectStudent = dataSourceBack.StudentBackend.GetDefault(); //var expectStudent = DataSourceBackend.Instance.StudentBackend.GetDefault(); //act var result = backend.GetStudentById(expectStudent.Id); //assert Assert.AreEqual(expectStudent, result, TestContext.TestName); }
public void Backend_IdentityBackend_ListAllSupportUsers_Should_Pass() { //arrange var testUsername1 = "testUser1"; var testUsername2 = "userNumber2"; var expectSupportUsers = 1; var dummyUser1 = new ApplicationUser() { UserName = testUsername1, Email = testUsername1 + "@seattleu.edu", Id = testUsername1 }; var dummyUser2 = new ApplicationUser() { UserName = testUsername2, Email = testUsername2 + "@seattleu.edu", Id = testUsername2 }; var claimIdentity1 = new IdentityUserClaim() { ClaimType = _5051.Models.UserRoleEnum.TeacherUser.ToString(), ClaimValue = "True", }; var claimIdentity2 = new IdentityUserClaim() { ClaimType = _5051.Models.UserRoleEnum.SupportUser.ToString(), ClaimValue = "True", }; var claimIdentity3 = new IdentityUserClaim() { ClaimType = _5051.Models.UserRoleEnum.SupportUser.ToString(), ClaimValue = "False", }; //only 1 user is a support user dummyUser1.Claims.Add(claimIdentity1); dummyUser1.Claims.Add(claimIdentity2); dummyUser2.Claims.Add(claimIdentity3); var userList = new List <ApplicationUser>() { dummyUser1, dummyUser2, }.AsQueryable(); var userStore = new Mock <IUserStore <ApplicationUser> >(); var createDummyUser = userStore .Setup(x => x.CreateAsync(dummyUser1)) .Returns(Task.FromResult(IdentityResult.Success)); var passwordManager1 = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername1)) .ReturnsAsync(dummyUser1); var passwordManager2 = userStore.As <IUserPasswordStore <ApplicationUser> >() .Setup(x => x.FindByIdAsync(testUsername2)) .ReturnsAsync(dummyUser2); var claimsManager = userStore.As <IUserClaimStore <ApplicationUser> >(); var iQueryManager = userStore.As <IQueryableUserStore <ApplicationUser> >() .Setup(x => x.Users) .Returns(userList); var userManager = new ApplicationUserManager(userStore.Object); var backend = new IdentityDataSourceMock(userManager, null); //act var result = backend.ListAllSupportUsers(); //assert Assert.AreEqual(expectSupportUsers, result.Count, TestContext.TestName); }