Skip to content

Commit

Permalink
Remove external lib method get_ext_lib_path. Add set_cert_path in ord…
Browse files Browse the repository at this point in the history
…er to allow set the cert path in a different folder than the toolkit
  • Loading branch information
pitbulk committed Jan 9, 2021
1 parent f904996 commit 7c01457
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 21 deletions.
18 changes: 7 additions & 11 deletions src/onelogin/saml2/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -143,8 +143,7 @@ def __load_paths(self, base_path=None):
self.__paths = {
'base': base_path,
'cert': base_path + 'certs' + sep,
'lib': base_path + 'lib' + sep,
'extlib': base_path + 'extlib' + sep,
'lib': dirname(__file__) + sep
}

def __update_paths(self, settings):
Expand All @@ -168,6 +167,12 @@ def get_base_path(self):
"""
return self.__paths['base']

def set_cert_path(self, path):
"""
Set a new cert path
"""
self.__paths['cert'] = path

def get_cert_path(self):
"""
Returns cert path
Expand All @@ -186,15 +191,6 @@ def get_lib_path(self):
"""
return self.__paths['lib']

def get_ext_lib_path(self):
"""
Returns external lib path
:return: The external library folder path
:rtype: string
"""
return self.__paths['extlib']

def get_schemas_path(self):
"""
Returns schema path
Expand Down
48 changes: 38 additions & 10 deletions tests/src/OneLogin/saml2_tests/settings_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -125,29 +125,57 @@ def testGetCertPath(self):
settings = OneLogin_Saml2_Settings(custom_base_path=self.settings_path)
self.assertEqual(self.settings_path + sep + 'certs' + sep, settings.get_cert_path())

def testGetLibPath(self):
def testSetCertPath(self):
"""
Tests getLibPath method of the OneLogin_Saml2_Settings
Tests setCertPath method of the OneLogin_Saml2_Settings
"""
settings = OneLogin_Saml2_Settings(custom_base_path=self.settings_path)
base = settings.get_base_path()
self.assertEqual(join(base, 'lib') + sep, settings.get_lib_path())
self.assertEqual(self.settings_path + sep + 'certs' + sep, settings.get_cert_path())

def testGetExtLibPath(self):
settings.set_cert_path('/tmp')
self.assertEqual('/tmp', settings.get_cert_path())

def testGetLibPath(self):
"""
Tests getExtLibPath method of the OneLogin_Saml2_Settings
Tests getLibPath method of the OneLogin_Saml2_Settings
"""
settingsInfo = self.loadSettingsJSON()
settings = OneLogin_Saml2_Settings(settingsInfo)
path = settings.get_base_path()
self.assertEqual(settings.get_lib_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/../../../tests/data/customPath/'))

del settingsInfo['custom_base_path']
settings = OneLogin_Saml2_Settings(settingsInfo)
path = settings.get_base_path()
self.assertEqual(settings.get_lib_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/'))

settings = OneLogin_Saml2_Settings(custom_base_path=self.settings_path)
base = settings.get_base_path()
self.assertEqual(join(base, 'extlib') + sep, settings.get_ext_lib_path())
path = settings.get_base_path()
self.assertEqual(settings.get_lib_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(__file__)))), 'settings/'))

def testGetSchemasPath(self):
"""
Tests getSchemasPath method of the OneLogin_Saml2_Settings
"""
settingsInfo = self.loadSettingsJSON()
settings = OneLogin_Saml2_Settings(settingsInfo)
path = settings.get_base_path()
self.assertEqual(settings.get_schemas_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/schemas/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/../../../tests/data/customPath/'))

del settingsInfo['custom_base_path']
settings = OneLogin_Saml2_Settings(settingsInfo)
path = settings.get_base_path()
self.assertEqual(settings.get_schemas_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/schemas/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/'))

settings = OneLogin_Saml2_Settings(custom_base_path=self.settings_path)
base = settings.get_base_path()
self.assertEqual(join(base, 'lib', 'schemas') + sep, settings.get_schemas_path())
path = settings.get_base_path()
self.assertEqual(settings.get_schemas_path(), join(dirname(dirname(dirname(dirname(dirname(__file__))))), 'src/onelogin/saml2/schemas/'))
self.assertEqual(path, join(dirname(dirname(dirname(dirname(__file__)))), 'settings/'))

def testGetIdPSSOurl(self):
"""
Expand Down

0 comments on commit 7c01457

Please sign in to comment.