summaryrefslogtreecommitdiffstats
path: root/src/config/SSSDConfigTest.py
diff options
context:
space:
mode:
authorJan Cholasta <jcholast@redhat.com>2012-02-08 10:42:04 -0500
committerStephen Gallagher <sgallagh@redhat.com>2012-02-10 13:29:54 -0500
commit2a2e9555ee70b67e85b8b439cf84555f32da7509 (patch)
tree999c5911860e05c806aaaa20b40eb2d971441080 /src/config/SSSDConfigTest.py
parent442b18f4b3d38460fd14dca5ae4a2c63e8998962 (diff)
downloadsssd-2a2e9555ee70b67e85b8b439cf84555f32da7509.tar.gz
sssd-2a2e9555ee70b67e85b8b439cf84555f32da7509.tar.xz
sssd-2a2e9555ee70b67e85b8b439cf84555f32da7509.zip
Add methods for activating and deactivating services to SSSDConfig
Diffstat (limited to 'src/config/SSSDConfigTest.py')
-rwxr-xr-xsrc/config/SSSDConfigTest.py123
1 files changed, 123 insertions, 0 deletions
diff --git a/src/config/SSSDConfigTest.py b/src/config/SSSDConfigTest.py
index 5bad40edb..16dbedfc6 100755
--- a/src/config/SSSDConfigTest.py
+++ b/src/config/SSSDConfigTest.py
@@ -1080,6 +1080,7 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
'sssd',
'nss',
'pam',
+ 'sudo',
'domain/PROXY',
'domain/IPA',
'domain/LOCAL',
@@ -1184,6 +1185,54 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
#TODO Write tests to compare output files
pass
+ def testListActiveServices(self):
+ sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
+ srcdir + "/etc/sssd.api.d")
+
+ # Negative Test - Not Initialized
+ self.assertRaises(SSSDConfig.NotInitializedError, sssdconfig.list_active_services)
+
+ # Positive Test
+ sssdconfig.import_config(srcdir + '/testconfigs/sssd-valid.conf')
+
+ control_list = [
+ 'nss',
+ 'pam']
+ active_services = sssdconfig.list_active_services()
+
+ for service in control_list:
+ self.assertTrue(service in active_services,
+ "Service [%s] missing" %
+ service)
+ for service in active_services:
+ self.assertTrue(service in control_list,
+ "Service [%s] unexpectedly found" %
+ service)
+
+ def testListInactiveServices(self):
+ sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
+ srcdir + "/etc/sssd.api.d")
+
+ # Negative Test - Not Initialized
+ self.assertRaises(SSSDConfig.NotInitializedError, sssdconfig.list_inactive_services)
+
+ # Positive Test
+ sssdconfig.import_config(srcdir + '/testconfigs/sssd-valid.conf')
+
+ control_list = [
+ 'sssd',
+ 'sudo']
+ inactive_services = sssdconfig.list_inactive_services()
+
+ for service in control_list:
+ self.assertTrue(service in inactive_services,
+ "Service [%s] missing" %
+ service)
+ for service in inactive_services:
+ self.assertTrue(service in control_list,
+ "Service [%s] unexpectedly found" %
+ service)
+
def testListServices(self):
sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
srcdir + "/etc/sssd.api.d")
@@ -1281,6 +1330,80 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
# Negative Test - Type Error
self.assertRaises(TypeError, sssdconfig.save_service, self)
+ def testActivateService(self):
+ sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
+ srcdir + "/etc/sssd.api.d")
+
+ service_name = 'sudo'
+
+ # Negative test - Not initialized
+ self.assertRaises(SSSDConfig.NotInitializedError,
+ sssdconfig.activate_service, service_name)
+
+ sssdconfig.import_config(srcdir + "/testconfigs/sssd-valid.conf")
+
+ # Positive test - Activate an inactive service
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertFalse(service_name in sssdconfig.list_active_services())
+ self.assertTrue(service_name in sssdconfig.list_inactive_services())
+
+ sssdconfig.activate_service(service_name)
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertTrue(service_name in sssdconfig.list_active_services())
+ self.assertFalse(service_name in sssdconfig.list_inactive_services())
+
+ # Positive test - Activate an active service
+ # This should succeed
+ sssdconfig.activate_service(service_name)
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertTrue(service_name in sssdconfig.list_active_services())
+ self.assertFalse(service_name in sssdconfig.list_inactive_services())
+
+ # Negative test - Invalid service name
+ self.assertRaises(SSSDConfig.NoServiceError,
+ sssdconfig.activate_service, 'nosuchservice')
+
+ # Negative test - Invalid service name type
+ self.assertRaises(SSSDConfig.NoServiceError,
+ sssdconfig.activate_service, self)
+
+ def testDeactivateService(self):
+ sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
+ srcdir + "/etc/sssd.api.d")
+
+ service_name = 'pam'
+
+ # Negative test - Not initialized
+ self.assertRaises(SSSDConfig.NotInitializedError,
+ sssdconfig.activate_service, service_name)
+
+ sssdconfig.import_config(srcdir + "/testconfigs/sssd-valid.conf")
+
+ # Positive test -Deactivate an active service
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertTrue(service_name in sssdconfig.list_active_services())
+ self.assertFalse(service_name in sssdconfig.list_inactive_services())
+
+ sssdconfig.deactivate_service(service_name)
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertFalse(service_name in sssdconfig.list_active_services())
+ self.assertTrue(service_name in sssdconfig.list_inactive_services())
+
+ # Positive test - Deactivate an inactive service
+ # This should succeed
+ sssdconfig.deactivate_service(service_name)
+ self.assertTrue(service_name in sssdconfig.list_services())
+ self.assertFalse(service_name in sssdconfig.list_active_services())
+ self.assertTrue(service_name in sssdconfig.list_inactive_services())
+
+ # Negative test - Invalid service name
+ self.assertRaises(SSSDConfig.NoServiceError,
+ sssdconfig.activate_service, 'nosuchservice')
+
+ # Negative test - Invalid service name type
+ self.assertRaises(SSSDConfig.NoServiceError,
+ sssdconfig.activate_service, self)
+
def testListActiveDomains(self):
sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf",
srcdir + "/etc/sssd.api.d")