public void EachTestInitialize() { Player p1 = new Player() {FirstName="TestFirstName1", LastName="TestLastName1", BirthDate=new DateTime(1993,10,10), PhoneNumber="606", Email="*****@*****.**", SkillLevel=.0f, City="Testowo", TopPosition=1}; Player p2 = new Player() { FirstName = "TestFirstName2", LastName = "TestLastName2", BirthDate = new DateTime(1991, 11, 04), PhoneNumber = "606", Email = "*****@*****.**", SkillLevel = .5f, City = "Testolandia", TopPosition = 2 }; Account a1 = new Account() { Login = "******", Password = "******", Player = p1 }; Account a2 = new Account() { Login = "******", Password = "******", Player = p2 }; context.Accounts.Add(a1); context.Accounts.Add(a2); context.Players.Add(p1); context.Players.Add(p2); context.SaveChanges(); id1 = context.Accounts.FirstOrDefault<Account>(a => a.Login == "test1").AccountId; id2 = context.Accounts.FirstOrDefault<Account>(a => a.Login == "test2").AccountId; context.SaveChanges(); }
public ActionResult Register(RegistrationViewModel rvm) { if (ModelState.IsValid) { using(var db = new TennisOrganizerContext()) { if (!Account.CheckAvailability(rvm.Login)) { ViewData.Add("LoginAvailability", (bool)false); return View(rvm); } else { Account acc = new Account { Login = rvm.Login, Password = rvm.Password }; rvm.Player.ImagePath = "default.png"; Player p = rvm.Player; p.TopPosition = db.Players.Count<Player>() + 1; Account.CreateAccount(acc, p); TempData.Add("RegisteredLogin", rvm.Login); TempData.Add("RegisteredName", rvm.Player.FirstName); TempData.Add("RegisteredEmail", rvm.Player.Email); if (!TempData.ContainsKey("ValidRegistration")) ; TempData.Add("ValidRegistration", (bool) true); return RedirectToAction("RegisterSuccess"); } } } else { return View(rvm); } }
public void Test_CheckAvailability() { Account acc = new Account() { Login = "******", Password = "******" }; db.Accounts.Add(acc); db.SaveChanges(); bool result = Account.CheckAvailability("test"); bool result2= Account.CheckAvailability("Account_Test"); Assert.IsFalse(result); Assert.IsTrue(result2); }
public static bool CreateAccount(Account acc, Player p) { if (acc == null || p == null) return false; if (CheckAvailability(acc.Login) == false) return false; acc.Player = p; acc.Password = Encrypter.GetSHA256Hash(acc.Password); using (var db = new TennisOrganizerContext()) { db.Accounts.Add(acc); db.Players.Add(p); db.SaveChanges(); var query = (from a in db.Accounts where a.Login == acc.Login select a); if (query.Count<Account>() != 0) return true; else return false; } }
public ActionResult Index(Account acc, string ReturnUrl) { using (var db = new TennisOrganizerContext()) { var query = db.Accounts.FirstOrDefault<Account>(a => a.Login == acc.Login); if (query == null) { ViewData.Add("LoginNotFound", (bool)true); return View(acc); } else if (Account.CheckPassword(query.Login, acc.Password) == false) { ViewData.Add("PasswordIncorrect", (bool)true); return View(acc); } else { // Session["User"] = acc.Login; FormsAuthentication.SetAuthCookie(acc.Login, false); if (ReturnUrl != null) return Redirect(ReturnUrl); return RedirectToAction("Profile", "Main"); } } }
public void Test_CreateAccount() { Account acc = null; Player p = null; bool result1 = Account.CreateAccount(acc, p); acc = new Account { Login = "******", Password = "******"}; p = new Player { FirstName = "AccountTest", LastName = "AccountTest", BirthDate=new DateTime(2015,01,01), Email = "*****@*****.**", City = "AccountTest" }; bool result2 = Account.CreateAccount(acc, p); bool result3 = Account.CreateAccount(acc, p); Assert.IsFalse(result1); Assert.IsTrue(result2); Assert.IsFalse(result3); }
public void Test_CheckPassword() { Account acc = null; acc = new Account() { Login = "******", Password = "******", Player = p }; Account.CreateAccount(acc, p); bool result1 = Account.CheckPassword(acc.Login, "asd"); bool result2 = Account.CheckPassword("Account_Test_fail", "asd"); bool result3 = Account.CheckPassword(acc.Login, "badPassword"); Assert.IsTrue(result1); Assert.IsFalse(result2); Assert.IsFalse(result3); }
public void Test_UpdatePlayer() { Account acc = null; Player p2 = null; acc = new Account() { Login = "******", Password = "******", Player = p }; bool result2 = acc.UpdatePlayer( "asd", p); Account.CreateAccount(acc, p); bool result3 = acc.UpdatePlayer( "dsa", p); Assert.IsFalse(result2); Assert.IsFalse(result3); }
public void Test_UpdateAccount() { Account acc = null; acc = new Account { Login = "******", Password = "******" }; bool result2 = acc.UpdatePlayer("asd", p); Account.CreateAccount(acc, p); bool result3 = acc.UpdateAccount("dsa", "dsa", "Account_Test"); bool result4 = acc.UpdateAccount("asd", "dsa", "Account_Test2"); var query = db.Accounts.Where<Account>(a => a.Login == "Account_Test2").FirstOrDefault<Account>(); bool result5 = query == null ? false : true; if(result5 == true) { acc.UpdateAccount("dsa", "asd", "Account_Test2"); } Assert.IsFalse(result2); Assert.IsFalse(result3); Assert.IsTrue(result4); Assert.IsTrue(result5); }
public ActionResult AccountEdition(AccountEditorData model) { if (Session["LoggedInPlayerId"] == null || Session["LoggedInPlayer"] == null) return RedirectToAction("Index", "Home"); if(ModelState.IsValid) { if (model.Login != (string)Session["LoggedInPlayer"]) { if (!Account.CheckAvailability(model.Login)) { ViewData.Add("LoginAvailability", (bool)false); return View(model); } Account acc = new Account() { AccountId = (int)Session["LoggedInPlayerId"] }; if(acc.UpdateAccount(model.Password, model.NewPassword, model.Login) == false) { ViewData.Add("PasswordIncorrect", (bool)true); return View(model); } else { FormsAuthentication.SignOut(); FormsAuthentication.SetAuthCookie(model.Login, false); } } } return View(model); }