summaryrefslogtreecommitdiffstats
path: root/server/config/SSSDConfigTest.py
diff options
context:
space:
mode:
Diffstat (limited to 'server/config/SSSDConfigTest.py')
-rw-r--r--server/config/SSSDConfigTest.py42
1 files changed, 40 insertions, 2 deletions
diff --git a/server/config/SSSDConfigTest.py b/server/config/SSSDConfigTest.py
index e2efa43fb..d3e452618 100644
--- a/server/config/SSSDConfigTest.py
+++ b/server/config/SSSDConfigTest.py
@@ -157,6 +157,20 @@ class SSSDConfigTestValid(unittest.TestCase):
self.assertEqual(ldap_domain.get_option('auth_provider'), 'ldap')
self.assertEqual(ldap_domain.get_option('id_provider'), 'ldap')
+class SSSDConfigTestInvalid(unittest.TestCase):
+ def setUp(self):
+ pass
+
+ def tearDown(self):
+ pass
+
+ def testBadBool(self):
+ sssdconfig = SSSDConfig.SSSDConfig("etc/sssd.api.conf",
+ "etc/sssd.api.d")
+ sssdconfig.import_config("testconfigs/sssd-invalid-badbool.conf")
+ self.assertRaises(TypeError,
+ sssdconfig.get_domain,'IPA')
+
class SSSDConfigTestSSSDService(unittest.TestCase):
def setUp(self):
self.schema = SSSDConfig.SSSDConfigSchema("etc/sssd.api.conf",
@@ -848,6 +862,7 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
'services',
'reconnection_retries',
'domains',
+ 'debug_timestamps',
'config_file_version']
for option in control_list:
@@ -961,12 +976,14 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
# Negative Test - Not initialized
self.assertRaises(SSSDConfig.NotInitializedError, sssdconfig.get_service, 'sssd')
- sssdconfig.new_config()
+ sssdconfig.import_config('testconfigs/sssd-valid.conf')
service = sssdconfig.get_service('sssd')
self.assertTrue(isinstance(service, SSSDConfig.SSSDService))
- # TODO verify the contents of this service
+ # Verify the contents of this service
+ self.assertEqual(type(service.get_option('debug_timestamps')), bool)
+ self.assertFalse(service.get_option('debug_timestamps'))
# Negative Test - No such service
self.assertRaises(SSSDConfig.NoServiceError, sssdconfig.get_service, 'nosuchservice')
@@ -1244,6 +1261,22 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
self.assertEquals(len(sssdconfig.list_inactive_domains()),
len(inactivelist)-1)
+ # Positive test - Ensure that saved domains retain values
+ domain.set_option('ldap_krb5_init_creds', True)
+ domain.set_option('ldap_id_use_start_tls', False)
+ domain.set_option('ldap_user_search_base',
+ 'cn=accounts, dc=example, dc=com')
+ self.assertTrue(domain.get_option('ldap_krb5_init_creds'))
+ self.assertFalse(domain.get_option('ldap_id_use_start_tls'))
+ self.assertEqual(domain.get_option('ldap_user_search_base'),
+ 'cn=accounts, dc=example, dc=com')
+
+ sssdconfig.save_domain(domain)
+ sssdconfig.write('/tmp/testSaveDomain.out')
+
+ domain2 = sssdconfig.get_domain('example.com2')
+ self.assertTrue(domain2.get_option('ldap_krb5_init_creds'))
+ self.assertFalse(domain2.get_option('ldap_id_use_start_tls'))
def testActivateDomain(self):
sssdconfig = SSSDConfig.SSSDConfig("etc/sssd.api.conf",
@@ -1342,4 +1375,9 @@ if __name__ == "__main__":
if not res.wasSuccessful():
error |= 0x8
+ suite = unittest.TestLoader().loadTestsFromTestCase(SSSDConfigTestInvalid)
+ res = unittest.TextTestRunner().run(suite)
+ if not res.wasSuccessful():
+ error |= 0x10
+
exit(error)