def test_initdb_not_initialized(self): # Call the function model = MagicMock() db.init_db(model) # Assert that table method has been called db.sa.Table.assert_called_once() model.meta.mapper.assert_called_once()
def test_initdb_initialized(self): db.UserToken = MagicMock() # Call the function model = MagicMock() db.init_db(model) # Assert that table method has been called self.assertEquals(0, db.sa.Table.call_count) self.assertEquals(0, model.meta.mapper.call_count)
def __init__(self, name=None): """Store the OAuth 2 client configuration""" log.debug("Init OAuth2 extension") self.verify_https = os.environ.get("OAUTHLIB_INSECURE_TRANSPORT", "") == "" if self.verify_https and os.environ.get("REQUESTS_CA_BUNDLE", "").strip() != "": self.verify_https = os.environ["REQUESTS_CA_BUNDLE"].strip() self.jwt_enable = os.environ.get( "CKAN_OAUTH2_JWT_ENABLE", toolkit.config.get("ckan.oauth2.jwt.enable", "")).strip().lower() in ("true", "1", "on") self.authorization_endpoint = os.environ.get( "CKAN_OAUTH2_AUTHORIZATION_ENDPOINT", toolkit.config.get("ckan.oauth2.authorization_endpoint", ""), ).strip() self.token_endpoint = os.environ.get( "CKAN_OAUTH2_TOKEN_ENDPOINT", toolkit.config.get("ckan.oauth2.token_endpoint", ""), ).strip() self.profile_api_url = os.environ.get( "CKAN_OAUTH2_PROFILE_API_URL", toolkit.config.get("ckan.oauth2.profile_api_url", "")).strip() self.client_id = os.environ.get( "CKAN_OAUTH2_CLIENT_ID", toolkit.config.get("ckan.oauth2.client_id", "")).strip() self.client_secret = os.environ.get( "CKAN_OAUTH2_CLIENT_SECRET", toolkit.config.get("ckan.oauth2.client_secret", "")).strip() self.scope = os.environ.get( "CKAN_OAUTH2_SCOPE", toolkit.config.get("ckan.oauth2.scope", "")).strip() self.rememberer_name = os.environ.get( "CKAN_OAUTH2_REMEMBER_NAME", toolkit.config.get("ckan.oauth2.rememberer_name", "auth_tkt"), ).strip() self.profile_api_user_field = os.environ.get( "CKAN_OAUTH2_PROFILE_API_USER_FIELD", toolkit.config.get("ckan.oauth2.profile_api_user_field", ""), ).strip() self.profile_api_fullname_field = os.environ.get( "CKAN_OAUTH2_PROFILE_API_FULLNAME_FIELD", toolkit.config.get("ckan.oauth2.profile_api_fullname_field", ""), ).strip() self.profile_api_mail_field = os.environ.get( "CKAN_OAUTH2_PROFILE_API_MAIL_FIELD", toolkit.config.get("ckan.oauth2.profile_api_mail_field", ""), ).strip() self.profile_api_groupmembership_field = os.environ.get( "CKAN_OAUTH2_PROFILE_API_GROUPMEMBERSHIP_FIELD", toolkit.config.get("ckan.oauth2.profile_api_groupmembership_field", ""), ).strip() self.sysadmin_group_name = os.environ.get( "CKAN_OAUTH2_SYSADMIN_GROUP_NAME", toolkit.config.get("ckan.oauth2.sysadmin_group_name", ""), ).strip() self.redirect_uri = urljoin( urljoin( toolkit.config.get("ckan.site_url", "http://localhost:5000"), toolkit.config.get("ckan.root_path"), ), REDIRECT_URL, ) # Init db db.init_db(model) missing = [ key for key in REQUIRED_CONF if getattr(self, key, "") == "" ] if missing: raise ValueError("Missing required oauth2 conf: %s" % ", ".join(missing)) elif self.scope == "": self.scope = None """