def test_get_non_existent_user_id_returns_none(self): username = '******' password = '******' user_db.create_user(username, password) fetched_data = user_db.get_user(user_id=12324) self.assertEqual(fetched_data, None)
def test_false_user_check_password_wrong_password(self): username = '******' password = '******' user_db.create_user(username, password) user = user_db.get_user(username=username) self.assertEqual(user.check_password("False"), False)
def test_user_check_password(self): username = '******' password = '******' user_db.create_user(username, password) user = user_db.get_user(username=username) self.assertEqual(user.check_password(password), True)
def test_success_get_user_by_username(self): username = '******' password = '******' user_db.create_user(username, password) user = user_db.get_user(username=username) self.assertIsInstance(user.id, int) self.assertEqual(user.username, username) hash_password, _ = utils.get_hash_with_salt(password, salt=user.salt) self.assertEqual(hash_password, user.password)
def test_get_user_by_user_id(self): username = '******' password = '******' user_db.create_user(username, password) user = user_db.get_user(username=username) print user.id fetched_user = user_db.get_user(user_id=user.id) print fetched_user.id self.assertIsInstance(fetched_user.id, int) self.assertEqual(user.id, fetched_user.id) self.assertEqual(fetched_user.username, username) hash_password, _ = utils.get_hash_with_salt(password, salt=fetched_user.salt) self.assertEqual(hash_password, fetched_user.password)
def create_user(username=None, password=None): if not username: username = str(utils.get_random_string(30)) if not password: password = str(utils.get_random_string(30)) user_id = db.create_user(username, password) return user_id
def test_returns_user_id(self): username = '******' password = '******' user_id = user_db.create_user(username, password) self.assertIsInstance(user_id, int) _, fetched_username, _, _ = base_db.fetchone("SELECT * FROM users WHERE id=%s", user_id) self.assertEqual(username, fetched_username)
def test_set_session_data(self): username = '******' password = '******' user_id = user_db.create_user(username, password) session_id = str(utils.get_random_string(50)) data = {'user_id' : user_id} user_db.create_session_data(session_id, data) session = user_db.get_session(session_id) self.assertEqual(session.data, data)
def test_success_create(self): username = '******' password = '******' user_id = user_db.create_user(username, password) fetched_user_id, fetched_username, fetched_password, salt = base_db.fetchone("SELECT * FROM users") self.assertIsInstance(fetched_user_id, int) self.assertEqual(user_id, fetched_user_id) self.assertEqual(username, fetched_username) hash_password, _ = utils.get_hash_with_salt(password, salt=salt) self.assertEqual(hash_password, fetched_password)
def registration(request): errors = [] if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] errors.extend(validation.validate_username(username)) errors.extend(validation.validate_password(password)) if not errors: user_id = user_db.create_user(username, password) return redirect('/confirmation/user_id/{}/'.format(user_id)) return render_to_response('users/registration.html', { 'errors' : errors, })