Initial tests for OAuthSignIn

This commit is contained in:
2017-08-24 12:38:43 +02:00
parent 45275c3831
commit cecf81a07d
4 changed files with 82 additions and 19 deletions

View File

@@ -0,0 +1,31 @@
from pillar.tests import AbstractPillarTest
class OAuthTests(AbstractPillarTest):
def setUp(self, **kwargs):
super().setUp(**kwargs)
self.enter_app_context()
def test_providers_init(self):
from pillar.auth.oauth import OAuthSignIn, BlenderIdSignIn
blender_id_oauth_provider = OAuthSignIn.get_provider('blender-id')
self.assertIsInstance(blender_id_oauth_provider, BlenderIdSignIn)
self.assertEqual(blender_id_oauth_provider.service.base_url, 'http://blender_id:8000/api/')
def test_provider_not_implemented(self):
from pillar.auth.oauth import OAuthSignIn, ProviderNotImplemented
with self.assertRaises(ProviderNotImplemented):
OAuthSignIn.get_provider('jonny')
def test_provider_not_configured(self):
from pillar.auth.oauth import OAuthSignIn, ProviderConfigurationMissing
# Before we start this test, the providers dict
# may not be initialized yet.
self.assertIsNone(OAuthSignIn._providers)
del self.app.config['OAUTH_CREDENTIALS']['blender-id']
with self.assertRaises(ProviderConfigurationMissing):
OAuthSignIn.get_provider('blender-id')