コード例 #1
0
class LoginFeatureTest(Test):

    def setUp(self):
        self.feature = LoginFeature()

    def tearDown(self):
        Session.delete().execute()
        User.delete().execute()

    def register_example_user(self):
        RegisterUserFeature().register_user('*****@*****.**', '123456')

    def test_can_login_with_valid_credentials(self):
        self.register_example_user()
        token = self.feature.login('*****@*****.**', '123456')
        self.assertTrue(self.feature.is_logged(token))

    def test_cannot_login_with_inexistent_user(self):
        with self.assertRaises(LoginFeature.UserDoesNotExist):
            self.feature.login('*****@*****.**', '123456')

    def test_cannot_login_with_invalid_password(self):
        self.register_example_user()
        with self.assertRaises(LoginFeature.InvalidPassword):
            self.feature.login('*****@*****.**', '1234567')

    def test_can_get_current_user(self):
        self.register_example_user()
        token = self.feature.login('*****@*****.**', '123456')
        user = self.feature.get_current_user(token)
        self.assertEquals(user.email, '*****@*****.**')

    def test_cannot_get_current_user_without_login(self):
        self.register_example_user()
        user = self.feature.get_current_user('invalid_token')
        self.assertIsNone(user)

    def test_can_logout(self):
        self.register_example_user()
        token = self.feature.login('*****@*****.**', '123456')
        self.feature.logout(token)
        self.assertFalse(self.feature.is_logged(token))
        self.assertIsNone(self.feature.get_current_user(token))

    def test_can_login_with_case_changed_email(self):
        self.register_example_user()
        token = self.feature.login('*****@*****.**', '123456')
        self.assertTrue(self.feature.is_logged(token))
コード例 #2
0
ファイル: login_form.py プロジェクト: mbodock/chronos
 def login(self):
     feature = LoginFeature()
     session['session_token'] = feature.login(
         email=self.data.get('email'),
         password=self.data.get('password')
     )
コード例 #3
0
 def login(self):
     feature = LoginFeature()
     session['session_token'] = feature.login(
         email=self.data.get('email'), password=self.data.get('password'))