public void Complete_SavesTheChangesToTheLoginTable_LoginFoundInDatabase() { var login = new Login() {Username = "******", Password = "******", Store = new Store() {StoreName = "Test"} }; _unitOfWork.Logins.Add(login); _unitOfWork.Complete(); Assert.That(_unitOfWork.Logins.CheckUsername("Test"), Is.EqualTo(login)); }
public void CheckUsernameAndPassword_UsernameAndPasswdBothMatch_Return1() { Store store = new Store(); var login = new Login() { Username = "******", Password = "******", Store = new Store() { StoreName = "TestStore" } }; _context.Logins.Add(login); _context.SaveChanges(); var pass = new SecureString(); pass.AppendChar('p'); pass.AppendChar('a'); pass.AppendChar('s'); pass.AppendChar('s'); pass.AppendChar('w'); pass.AppendChar('d'); Assert.That(_login.CheckUsernameAndPassword("TestUser", pass, ref store), Is.EqualTo(1)); }
public void CheckUsernameAndPassword_CheckIfItRefStoreIsEqualToReqeustedStoreIfPasswordIsCorrect_RefStoreSameAsRequested() { Store storeGotten = _store; string username = "******"; Login login = new Login(); login.Id = 1; login.Password = "******"; login.Store = _store; login.Username = username; SecureString secureString = new SecureString(); secureString.AppendChar('1'); secureString.AppendChar('2'); secureString.AppendChar('3'); _unitOfWork.Logins.CheckUsername(username).Returns(login); _unitOfWork.Logins.CheckLogin(secureString, login).Returns(_store); _uut.CheckUsernameAndPassword(username, secureString, ref storeGotten); Assert.That(storeGotten, Is.EqualTo(_store)); }
public void SetUp() { _context = new DataContext(); _store = new Store() {StoreName = "TestStore"}; _loginRepository = new LoginRepository(_context); _context.Database.Connection.ConnectionString = "Server=.\\SQLEXPRESS;Database=Pristjek220Data.DataContext; Trusted_Connection=True;"; _context.Database.ExecuteSqlCommand("dbo.TestCleanTable"); _context.Stores.Add(_store); _login = new Login() { Username = "******", Password = "******", Store = _store }; _context.Logins.Add(_login); _context.SaveChanges(); _passwd = new SecureString(); _passwd.AppendChar('p'); _passwd.AppendChar('a'); _passwd.AppendChar('s'); _passwd.AppendChar('s'); _passwd.AppendChar('w'); _passwd.AppendChar('d'); }
public void CheckLogin_WrongUsernameAndPasswordEntered_TestStoreIsReturned() { var wrongLogin = new Login(); Assert.That(_loginRepository.CheckLogin(_passwd, wrongLogin), Is.EqualTo(null)); }
public void CheckLogin_NoPasswdEntered_NullIsReturned() { var wrongLogin = new Login(); SecureString emptyPasswd = null; Assert.That(_loginRepository.CheckLogin(emptyPasswd, wrongLogin), Is.EqualTo(null)); }
/// <summary> /// Takes a Username, password and storename, if the store does not exist and the password is not empty the Store will /// be created in the database with the password /// </summary> /// <param name="userName"></param> /// <param name="password"></param> /// <param name="storeName"></param> /// <returns>-1 if store is not found, retruns -2 if password is empty and returns 1 if the login has been created</returns> public int CreateLogin(string userName, SecureString password, string storeName) { if (_unitOfWork.Stores.FindStore(storeName) != null) { return -1; } var code = ConvertToUnsecureString(password); if (code == "") return -2; using (var hash = SHA256.Create()) { var enc = Encoding.UTF8; var input = code; var result = hash.ComputeHash(enc.GetBytes(input)); var sb = new StringBuilder(); foreach (var b in result) sb.Append(b.ToString("x2")); code = sb.ToString(); } var store = new Store {StoreName = storeName}; AddStore(store); userName = char.ToUpper(userName[0]) + userName.Substring(1).ToLower(); var login = new Login {Username = userName, Password = code, Store = store}; _unitOfWork.Logins.Add(login); return _unitOfWork.Complete(); }