public void Assignment_UpdateUser_Test() { //Arrange UserSqlDAL dao = new UserSqlDAL(ConnectionString); User inputUser = new User(); inputUser.Password = "******"; inputUser.Salt = "NuE0Y6FonAI="; inputUser.Role = "Teacher"; inputUser.Username = "******"; dao.CreateUser(inputUser); inputUser = dao.GetUser(inputUser.Username); inputUser.Role = "Admin"; dao.UpdateUser(inputUser); //Action User testUser = dao.GetUser(inputUser.Username); //Assert Assert.AreEqual(testUser.Role, inputUser.Role); }
public void Assignment_DeleteUser_Test() { //Arrange UserSqlDAL dao = new UserSqlDAL(ConnectionString); User inputUser = new User(); inputUser.Password = "******"; inputUser.Salt = "NuE0Y6FonAI="; inputUser.Role = "Teacher"; inputUser.Username = "******"; dao.CreateUser(inputUser); int test = GetRowCount("users"); inputUser = dao.GetUser(inputUser.Username); //Action dao.DeleteUser(inputUser); int result = GetRowCount("users"); //Assert Assert.AreEqual(result, test - 1); }
public ActionResult Login(User model) { UserSqlDAL userDal = new UserSqlDAL(connectionString); User user = userDal.GetUser(model.Email); if (user.Email == null || user.Password != model.Password) { ModelState.AddModelError("invalid-credentials", "An invalid email or password was provided"); return(View("Login", model)); } //if user clicked on 'cards' or 'decks' before logging in, take them there now Session["userid"] = user.Id; Session["admin"] = user.IsAdmin; switch (Session["anon"].ToString()) { case "Cards": return(RedirectToAction("Index", "Card")); case "Decks": return(RedirectToAction("Index", "Deck")); default: return(RedirectToAction("Index", "Home")); } }
public void GetUserTest() { UserSqlDAL dal = new UserSqlDAL(ConnectionString); User user = dal.GetUser("luteMan"); Assert.IsNotNull(user); }
public void ShouldReturnUser() { UserSqlDAL dao = new UserSqlDAL(connectionString); string username = "******"; User user = dao.GetUser(username); Assert.AreEqual("IvoryUnclerico", user); }
public void Assignment_GetAllUsers_Test() { //Arrange IUserDAL dao = new UserSqlDAL(ConnectionString); IList <User> testList = new List <User>(); testList = dao.GetAllUsers(); //Action int results = GetRowCount("users"); //Assert Assert.AreEqual(results, testList.Count); }
public override void Setup() { base.Setup(); PasswordHasher hash = new PasswordHasher(); dao = new UserSqlDAL(ConnectionString, new PasswordHasher()); string salt = Convert.ToBase64String(hash.GenerateRandomSalt()); using (SqlConnection connection = new SqlConnection(ConnectionString)) { connection.Open(); SqlCommand cmd = connection.CreateCommand(); cmd.CommandText = @"insert into Roles (roles_Title,role_Description) values ('Admin','Admin control' ),('Users','Generic User')"; cmd.ExecuteNonQuery(); cmd.CommandText = @"insert into UserLogin (first_Last_Name,userName,userRole,password,salt) values ('Gerg DinkleBerry','gdeckner','Admin',@password,@salt)"; cmd.Parameters.AddWithValue("@salt", "RrQlUO2CbmowsGDSpRhXZA=="); cmd.Parameters.AddWithValue("@password", "RrQlUO2CbmowsGDSpRhXZPGjRy1BEXkN3fdCrNs4xUJjxNcs"); cmd.ExecuteNonQuery(); } }
public ActionResult Register(User model) { if (!ModelState.IsValid) { return(View("Register", model)); } UserSqlDAL newUserDAL = new UserSqlDAL(connectionString); //attempt to retrieve provided email - cannot duplicate existing User newUser = newUserDAL.GetUser(model.Email); if (newUser.Email == null) { newUser.Email = model.Email; newUser.Password = model.Password; if (model.DisplayName == null) { newUser.DisplayName = model.Email.Substring(0, model.Email.IndexOf('@')); } else { newUser.DisplayName = model.DisplayName; } newUserDAL.Register(newUser); User retriveUser = newUserDAL.GetUser(newUser.Email); Session["userid"] = retriveUser.Id; Session["admin"] = retriveUser.IsAdmin; } else { ModelState.AddModelError("email-exists", "That email address exists, please contact Admin for password reset if needed."); return(View("Register", model)); } return(RedirectToAction("Index", "Home")); }
public void CreateUserTest() { UserSqlDAL dal = new UserSqlDAL(ConnectionString); User user = new User(); //populates our fake user with info user.BirthDate = new DateTime(2018, 1, 15); user.Email = "*****@*****.**"; user.HomeCity = "pittsburgh"; user.HomeState = "PA"; user.PasswordHash = "fake"; user.Salt = "testSalt"; user.SelfDescription = "testdescription"; user.Username = "******"; user.ListOfInstruments = new List <Instrument>(); Instrument horn = new Instrument("Horn"); Instrument violin = new Instrument("Violin"); Instrument viola = new Instrument("Viola"); user.ListOfInstruments.Add(horn); user.ListOfInstruments.Add(violin); user.ListOfInstruments.Add(viola); Place firstPlace = new Place("foo", "bar", DateTime.Today, DateTime.Today); Place secondPlace = new Place("fooburgh", "barland", DateTime.Today, DateTime.Today); user.ListOfPlaces = new List <Place>(); user.ListOfPlaces.Add(firstPlace); user.ListOfPlaces.Add(secondPlace); dal.CreateUser(user); using (SqlConnection connection = new SqlConnection(ConnectionString)) { connection.Open(); string cmdText = "SELECT email FROM users WHERE username = '******'"; SqlCommand command = new SqlCommand(cmdText, connection); string userEmail = Convert.ToString(command.ExecuteScalar()); cmdText = "SELECT ID FROM users WHERE username = '******'"; command = new SqlCommand(cmdText, connection); string userId = Convert.ToString(command.ExecuteScalar()); cmdText = $"SELECT instrument_name FROM Instruments_Played WHERE user_id = '{userId}' ORDER BY instrument_name ASC"; command = new SqlCommand(cmdText, connection); string userInstrument = Convert.ToString(command.ExecuteScalar()); cmdText = $"SELECT from_date FROM PLaces WHERE user_id = '{userId}'"; command = new SqlCommand(cmdText, connection); string userDate = Convert.ToString(command.ExecuteScalar()); Assert.AreEqual("*****@*****.**", $"{userEmail}"); Assert.AreEqual("Horn", $"{userInstrument}"); Assert.AreEqual($"{DateTime.Today}", actual: $"{userDate}"); } }
public ProfileController(UserSqlDAL userSqlDAL, SurveyAnswerDAL surveyAnswerDAL, FranchiseSqlDAL franchiseSqlDAL) { this.userSqlDAL = userSqlDAL; this.surveyAnswerDAL = surveyAnswerDAL; this.franchiseSqlDAL = franchiseSqlDAL; }
public SessionAuthProvider(IHttpContextAccessor contextAccessor, UserSqlDAL userDAL) { this.contextAccessor = contextAccessor; this.userDAL = userDAL; }
public void UserDALTest() { string joesUsername = "******"; string joesPassword = "******"; User someUser = new User(); someUser.Username = joesUsername; someUser.Password = joesPassword; someUser.Administrator = false; someUser.Researcher = false; someUser.Technician = false; someUser.Partneruser = false; UserSqlDAL dalObject = new UserSqlDAL(connectionString); dalObject.SaveUser(someUser); //checking if a username exists Assert.AreEqual(true, dalObject.UsernameExists(joesUsername)); Assert.AreEqual(false, dalObject.UsernameExists("000")); //checking that a password is correct Assert.AreEqual(true, dalObject.PasswordIsCorrect(joesUsername, joesPassword)); Assert.AreEqual(false, dalObject.PasswordIsCorrect(joesUsername, "000")); Assert.AreEqual(false, dalObject.PasswordIsCorrect("000", joesPassword)); //checking roles for a user Assert.AreEqual(false, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(false, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(false, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(false, dalObject.IsPartner(joesUsername)); //adding and removing roles for a user dalObject.AddAdminRole(joesUsername); Assert.AreEqual(true, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(false, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(false, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(false, dalObject.IsPartner(joesUsername)); dalObject.RemoveAdminRole(joesUsername); dalObject.AddResearchRole(joesUsername); Assert.AreEqual(false, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(true, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(false, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(false, dalObject.IsPartner(joesUsername)); dalObject.RemoveResearchRole(joesUsername); dalObject.AddTechRole(joesUsername); Assert.AreEqual(false, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(false, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(true, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(false, dalObject.IsPartner(joesUsername)); dalObject.RemoveTechRole(joesUsername); dalObject.AddPartnerRole(joesUsername); Assert.AreEqual(false, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(false, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(false, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(true, dalObject.IsPartner(joesUsername)); dalObject.RemovePartnerRole(joesUsername); Assert.AreEqual(false, dalObject.IsAdmin(joesUsername)); Assert.AreEqual(false, dalObject.IsResearcher(joesUsername)); Assert.AreEqual(false, dalObject.IsTechnician(joesUsername)); Assert.AreEqual(false, dalObject.IsPartner(joesUsername)); //Changing a user's password joesPassword = "******"; dalObject.ChangeUsersPassword(joesUsername, joesPassword); Assert.AreEqual(true, dalObject.PasswordIsCorrect(joesUsername, joesPassword)); }