diff options
Diffstat (limited to 'src/config/SSSDConfigTest.py')
-rwxr-xr-x | src/config/SSSDConfigTest.py | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/src/config/SSSDConfigTest.py b/src/config/SSSDConfigTest.py index 8cbb0f91..056e0f2a 100755 --- a/src/config/SSSDConfigTest.py +++ b/src/config/SSSDConfigTest.py @@ -1054,6 +1054,8 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): 'domain/IPA', 'domain/LOCAL', 'domain/LDAP', + 'domain/INVALIDPROVIDER', + 'domain/INVALIDOPTION', ] for section in control_list: @@ -1192,6 +1194,11 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): # Negative Test - No such service self.assertRaises(SSSDConfig.NoServiceError, sssdconfig.get_service, 'nosuchservice') + # Positive test - Service with invalid option loads + # but ignores the invalid option + service = sssdconfig.get_service('pam') + self.assertFalse(service.options.has_key('nosuchoption')) + def testNewService(self): sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf", srcdir + "/etc/sssd.api.d") @@ -1276,7 +1283,10 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): control_list = [ 'PROXY', - 'LDAP'] + 'LDAP', + 'INVALIDPROVIDER', + 'INVALIDOPTION', + ] inactive_domains = sssdconfig.list_inactive_domains() for domain in control_list: @@ -1302,7 +1312,10 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): 'IPA', 'LOCAL', 'PROXY', - 'LDAP'] + 'LDAP', + 'INVALIDPROVIDER', + 'INVALIDOPTION', + ] domains = sssdconfig.list_domains() for domain in control_list: @@ -1337,6 +1350,18 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): # Negative Test - No such domain self.assertRaises(SSSDConfig.NoDomainError, sssdconfig.get_domain, 'nosuchdomain') + # Positive Test - Domain with unknown provider + # Expected result: Domain is imported, but does not contain the + # unknown provider entry + domain = sssdconfig.get_domain('INVALIDPROVIDER') + self.assertFalse(domain.options.has_key('chpass_provider')) + + # Positive Test - Domain with unknown option + # Expected result: Domain is imported, but does not contain the + # unknown option entry + domain = sssdconfig.get_domain('INVALIDOPTION') + self.assertFalse(domain.options.has_key('nosuchoption')) + def testNewDomain(self): sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf", srcdir + "/etc/sssd.api.d") |