public void Init() { IdentityHelper ihelper = IdentityHelper.GetInstance(); string userName = "******"; AppUser user = new AppUser { AccountName = userName, Name = "James", Mobile = "1888888888", Email = "*****@*****.**" }; string password = "******"; var dbUser = database.Users.SingleOrDefault(u => u.AccountName == userName); if (dbUser != null) { //等一下注释掉这一句 database.Users.Remove(dbUser); database.SaveChanges(); } IdentityResult result = ihelper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队); testclaims = ihelper.CreateClaims(userName, password, userName); helper = VolunteerHelper.GetInstance(testclaims); }
public void EditVolunteerTest() { #region init IdentityHelper ihelper = IdentityHelper.GetInstance(); string userName = "******"; AppUser user = new AppUser { AccountName = userName, Name = "James", Mobile = "1888888888", Email = "*****@*****.**" }; string password = "******"; AppUser dbUser = database.Users.SingleOrDefault(u => u.AccountName == userName); if (dbUser != null) { database.Users.Remove(dbUser); database.SaveChanges(); } IdentityResult result1 = ihelper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队); testclaims = ihelper.CreateClaims(userName, password, userName); helper = VolunteerHelper.GetInstance(testclaims); #endregion #region 新建一个志愿者对象 Volunteer v = new Volunteer { StudentNum = 0401, Name = "EditTestName", Class = "TestClass", Email = "*****@*****.**", Room = "testroom" }; helper.AddVolunteer(v); #endregion #region 第一次修改 v.Name = "ModifiedEditTestName"; var tempvolunteer = helper.FindVolunteer(v.StudentNum); helper.EditVolunteer(tempvolunteer, v);//需要重建一个volunteer实体,因为实体v在加入数据库之后会自动更新链接到数据库中的条目。 tempvolunteer = helper.FindVolunteer(v.StudentNum); if (!Volunteer.AreSame(v, tempvolunteer)) { Assert.Fail("修改志愿者信息失败"); } #endregion #region 第二次修改 v.Name = "EditByParamTestName"; tempvolunteer = helper.FindVolunteer(v.StudentNum); helper.EditVolunteer(tempvolunteer, v.StudentNum, v.Name); tempvolunteer = helper.FindVolunteer(v.StudentNum); if (!Volunteer.AreSame(v, tempvolunteer)) { Assert.Fail("第二次修改志愿者信息失败"); } #endregion var result3 = helper.FindVolunteer(v.StudentNum); database.Volunteers.Remove(result3);//Remove }
public void AddToRoleTest() { string accountName = "!@#$%^&*()_+-=1234567890qwertyuiop[]\\{}|asdfghjkl;':\"zxcvbnm,./<>?"; AppUser dbUser = database.Users.SingleOrDefault(u => u.AccountName == accountName); if (dbUser != null) { database.Users.Remove(dbUser); database.SaveChanges(); } AppUser user = new AppUser { Name = "张三李四·.", AccountName = accountName, Email = "*****@*****.**", Mobile = "18888888888" }; string password = "******"zxcvbnm,./<>?"; IdentityResult result = helper.CreateUser(user, password, AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队); if (!result.Succeeded) { Assert.Inconclusive("CreateUser方法运行失败,本测试无法运行。"); } dbUser = database.Users.SingleOrDefault(u => u.AccountName == user.AccountName); helper.AddToRole(dbUser.Id, AppRoleEnum.LogViewer); AppUserIdentityClaims claims = helper.CreateClaims(user.AccountName, password); if (!claims.IsAuthenticated) { Assert.Inconclusive("CreateClaims方法运行失败,未取得IdentityClaims。"); } if (!claims.IsInRole(AppRoleEnum.LogViewer)) { Assert.Fail("角色添加失败!"); } database.Users.Remove(dbUser); database.SaveChanges(); }
public void Init() { AppUser user = CreateUser(); string password = "******"; var dbUser = database.Users.SingleOrDefault(u => u.AccountName == user.AccountName); if (dbUser != null) { //等一下注释掉这一句 database.Users.Remove(dbUser); database.SaveChanges(); } IdentityResult result = identityhelper.CreateUser(user, password, Interface.AppRoleEnum.OrgnizationMember, OrganizationEnum.SEA团队); testclaims = identityhelper.CreateClaims(user.AccountName, password); volunteerhelper = VolunteerHelper.GetInstance(testclaims); }
public ActionResult Login(LoginViewModel model) { //模型不符合要求,返回 if (!ModelState.IsValid) { return(View()); } var claims = helper.CreateClaims(model.Name, model.Password); //登录失败,返回 if (!claims.IsAuthenticated) { return(View()); } //登陆成功,判断是否需要记录Cookies if (model.RememberMe) { Request.Cookies.Add(new HttpCookie("RememberMe") { ["Name"] = EncryptCookie(model.Name), ["Password"] = EncryptCookie(model.Password), Expires = DateTime.Now.AddDays(1) }); } else { var cookie = Request.Cookies["RememberMe"]; if (cookie != null) { cookie.Expires = DateTime.Now.AddDays(-1); Request.Cookies.Add(cookie); } } //添加登录态 HttpContext.Session["Claim"] = claims.User; return(new HttpStatusCodeResult(200)); }