~roadmr/canonical-identity-provider/u2f-db-fields-separate-dev-type

« back to all changes in this revision

Viewing changes to src/identityprovider/tests/test_signals.py

  • Committer: Daniel Manrique
  • Date: 2020-02-21 21:19:46 UTC
  • mfrom: (1697.2.28 work)
  • Revision ID: roadmr@ubuntu.com-20200221211946-k3pds3i97yxy5zwg
MergedĀ fromĀ trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
    TokenScope,
22
22
)
23
23
from identityprovider.models.emailaddress import EmailAddress
24
 
from identityprovider.readonly import ReadOnlyManager
25
24
from identityprovider.signals import (
26
25
    invalidate_account_oauth_tokens,
27
26
    invalidate_preferredemail,
34
33
)
35
34
from identityprovider.tests import DEFAULT_USER_PASSWORD
36
35
from identityprovider.tests.test_auth import AuthLogTestCaseMixin
37
 
from identityprovider.tests.utils import SSOBaseTestCase
 
36
from identityprovider.tests.utils import SSOBaseTestCase, readonly_enabled
38
37
 
39
38
 
40
39
class SessionTokenOnLoginTestCase(SSOBaseTestCase):
107
106
            self.client.session.get(SESSION_TOKEN_KEY), token.key)
108
107
 
109
108
    def test_listener_read_only_mode_no_token(self):
110
 
        rm = ReadOnlyManager()
111
 
        rm.set_readonly()
112
 
        self.addCleanup(rm.clear_readonly)
113
 
 
114
 
        self.client.login(username=self.email, password=DEFAULT_USER_PASSWORD)
 
109
        with readonly_enabled():
 
110
            self.client.login(
 
111
                username=self.email, password=DEFAULT_USER_PASSWORD)
115
112
        self.assertEqual(self.account.token_set.all().count(), 0)
116
113
        self.assertEqual(self.client.session.get(SESSION_TOKEN_KEY), '')
117
114
 
118
115
    def test_listener_read_only_mode_previous_token_no_web_login(self):
119
116
        self.account.create_oauth_token(token_name=SESSION_TOKEN_NAME)
120
 
 
121
 
        rm = ReadOnlyManager()
122
 
        rm.set_readonly()
123
 
        self.addCleanup(rm.clear_readonly)
124
 
 
125
 
        self.client.login(username=self.email, password=DEFAULT_USER_PASSWORD)
 
117
        with readonly_enabled():
 
118
            self.client.login(
 
119
                username=self.email, password=DEFAULT_USER_PASSWORD)
126
120
        self.assertEqual(
127
121
            self.client.session.get(SESSION_TOKEN_KEY), '')
128
122
 
129
123
    def test_listener_read_only_mode_previous_token(self):
130
124
        token = self.account.create_oauth_token(
131
125
            token_name=SESSION_TOKEN_NAME, scope=TokenScope.WEB_LOGIN)
132
 
 
133
 
        rm = ReadOnlyManager()
134
 
        rm.set_readonly()
135
 
        self.addCleanup(rm.clear_readonly)
136
 
 
137
 
        self.client.login(username=self.email, password=DEFAULT_USER_PASSWORD)
 
126
        with readonly_enabled():
 
127
            self.client.login(
 
128
                username=self.email, password=DEFAULT_USER_PASSWORD)
138
129
        self.assertEqual(
139
130
            self.client.session.get(SESSION_TOKEN_KEY), token.key)
140
131