Example #1
0
    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)
Example #2
0
    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)
Example #3
0
    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)
Example #4
0
    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)
Example #5
0
    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)
Example #6
0
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
Example #7
0
    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)
Example #8
0
    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)
Example #9
0
    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)
Example #10
0
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,
            })