Files
@ 57f6ebd8ea4b
Branch filter:
Location: rattail-project/rattail/tests/db/test_auth.py - annotation
57f6ebd8ea4b
1.2 KiB
text/x-python
Add `User.active` and disallow authentication for inactive users.
57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b 57f6ebd8ea4b | # -*- coding: utf-8 -*-
from .. import DataTestCase
from rattail.db import auth
from rattail.db import model
class TestAuthenticateUser(DataTestCase):
def test_nonexistent_user_returns_none(self):
self.assertTrue(auth.authenticate_user(self.session, u'fred', u'fredpass') is None)
def test_correct_credentials_returns_user(self):
fred = model.User(username=u'fred')
auth.set_user_password(fred, u'fredpass')
self.session.add(fred)
self.session.commit()
user = auth.authenticate_user(self.session, u'fred', u'fredpass')
self.assertTrue(user is fred)
def test_wrong_password_user_returns_none(self):
fred = model.User(username=u'fred', active=False)
auth.set_user_password(fred, u'fredpass')
self.session.add(fred)
self.session.commit()
self.assertTrue(auth.authenticate_user(self.session, u'fred', u'BADPASS') is None)
def test_inactive_user_returns_none(self):
fred = model.User(username=u'fred', active=False)
auth.set_user_password(fred, u'fredpass')
self.session.add(fred)
self.session.commit()
self.assertTrue(auth.authenticate_user(self.session, u'fred', u'fredpass') is None)
|