-
-
Notifications
You must be signed in to change notification settings - Fork 801
/
Copy pathtest_generator.py
31 lines (21 loc) · 1021 Bytes
/
test_generator.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import pytest
from oauth2_provider.generators import BaseHashGenerator, generate_client_id, generate_client_secret
from .common_testing import OAuth2ProviderTestCase as TestCase
class MockHashGenerator(BaseHashGenerator):
def hash(self):
return 42
@pytest.mark.usefixtures("oauth2_settings")
class TestGenerators(TestCase):
def test_generate_client_id(self):
g = self.oauth2_settings.CLIENT_ID_GENERATOR_CLASS()
self.assertEqual(len(g.hash()), 40)
self.oauth2_settings.CLIENT_ID_GENERATOR_CLASS = MockHashGenerator
self.assertEqual(generate_client_id(), 42)
def test_generate_secret_id(self):
g = self.oauth2_settings.CLIENT_SECRET_GENERATOR_CLASS()
self.assertEqual(len(g.hash()), 128)
self.oauth2_settings.CLIENT_SECRET_GENERATOR_CLASS = MockHashGenerator
self.assertEqual(generate_client_secret(), 42)
def test_basegen_misuse(self):
g = BaseHashGenerator()
self.assertRaises(NotImplementedError, g.hash)