[SSSD] [sssd PR#680][synchronized] pytest: Add test case for Expired sudo rule

2018-10-22 Thread mrniranjan
   URL: https://github.com/SSSD/sssd/pull/680
Author: mrniranjan
 Title: #680: pytest: Add test case for Expired sudo rule
Action: synchronized

To pull the PR as Git branch:
git remote add ghsssd https://github.com/SSSD/sssd
git fetch ghsssd pull/680/head:pr680
git checkout pr680
From 8cddf199d93b5c5e9898cda260524facfe854725 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 14:00:30 +0530
Subject: [PATCH 1/6] pytest/sudo: Modify fixture to restore sssd.conf

Modify set_case_sensitive_false fixture to restore sssd.conf
back to the original sssd.conf after running test_case_senitivity
test case.

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 0d3b831bea..376a3b415b 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -15,6 +15,7 @@
 import os
 import tempfile
 import ldap
+import time
 
 
 def pytest_namespace():
@@ -193,8 +194,10 @@ def create_casesensitive_posix_user(session_multihost):
 
 
 @pytest.fixture
-def set_case_sensitive_false(session_multihost):
+def set_case_sensitive_false(session_multihost, request):
 """ Set case_sensitive to false in sssd domain section """
+bkup_sssd = 'cp -f /etc/sssd/sssd.conf /etc/sssd/sssd.conf.orig'
+session_multihost.master[0].run_command(bkup_sssd)
 session_multihost.master[0].transport.get_file('/etc/sssd/sssd.conf',
'/tmp/sssd.conf')
 sssdconfig = ConfigParser.SafeConfigParser()
@@ -208,6 +211,14 @@ def set_case_sensitive_false(session_multihost):
'/etc/sssd/sssd.conf')
 session_multihost.master[0].service_sssd('restart')
 
+def restore_sssd():
+""" Restore sssd.conf """
+restore_sssd = 'cp -f /etc/sssd/sssd.conf.orig /etc/sssd/sssd.conf'
+session_multihost.master[0].run_command(restore_sssd)
+session_multihost.master[0].service_sssd('restart')
+time.sleep(5)
+request.addfinalizer(restore_sssd)
+
 
 @pytest.fixture
 def enable_files_domain(session_multihost):

From f8926ab5817696c8825b5a8d2388a002266b1e56 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:31:25 +0530
Subject: [PATCH 2/6] pytest/sudo: Rename create_sudorule to
 case_sensitive_sudorule

Add del_sudo_rule function to delete the sudo rules
after test_sensitivity completes

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 17 ++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 376a3b415b..cfc35d527a 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -254,10 +254,10 @@ def teardown_files_domain_users():
 
 
 @pytest.fixture
-def create_sudorule(session_multihost, create_casesensitive_posix_user):
+def case_sensitive_sudorule(session_multihost,
+create_casesensitive_posix_user,
+request):
 """ Create posix user and groups """
-# pylint: disable=unused-argument
-_pytest_fixtures = [create_casesensitive_posix_user]
 ldap_uri = 'ldap://%s' % (session_multihost.master[0].sys_hostname)
 ds_rootdn = 'cn=Directory Manager'
 ds_rootpw = 'Secret123'
@@ -280,6 +280,17 @@ def create_sudorule(session_multihost, create_casesensitive_posix_user):
 except LdapException:
 pytest.fail("Failed to add sudo rule %s" % rule_dn2)
 
+def del_sensitive_sudo_rule():
+""" Delete sudo rule """
+(ret, _) = ldap_inst.del_dn(rule_dn1)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(rule_dn2)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(sudo_ou)
+assert ret == 'Success'
+time.sleep(5)
+request.addfinalizer(del_sensitive_sudo_rule)
+
 
 @pytest.fixture
 def enable_sss_sudo_nsswitch(session_multihost, tmpdir, request):

From 2e2240c2e3d7dc9be0f85a746855b20390aaa6c0 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:35:43 +0530
Subject: [PATCH 3/6] pytest/sudo: call case_sensitive_sudorule fixture instead
 of create_sudorule

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/test_sudo.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/tests/multihost/basic/test_sudo.py b/src/tests/multihost/basic/test_sudo.py
index ecf41ffb1a..af9b7a8e87 100644
--- a/src/tests/multihost/basic/test_sudo.py
+++ b/src/tests/multihost/basic/test_sudo.py
@@ -6,12 +6,12 @@
 
 class TestSanitySudo(object):
 """ Basic Sanity Test cases for sudo service in sssd """
-def test_case_senitivity(self, multihost, create_sudorule,
+def test_case_senitivity(self, multihost, 

[SSSD] [sssd PR#680][synchronized] pytest: Add test case for Expired sudo rule

2018-10-21 Thread mrniranjan
   URL: https://github.com/SSSD/sssd/pull/680
Author: mrniranjan
 Title: #680: pytest: Add test case for Expired sudo rule
Action: synchronized

To pull the PR as Git branch:
git remote add ghsssd https://github.com/SSSD/sssd
git fetch ghsssd pull/680/head:pr680
git checkout pr680
From 8cddf199d93b5c5e9898cda260524facfe854725 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 14:00:30 +0530
Subject: [PATCH 1/6] pytest/sudo: Modify fixture to restore sssd.conf

Modify set_case_sensitive_false fixture to restore sssd.conf
back to the original sssd.conf after running test_case_senitivity
test case.

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 0d3b831bea..376a3b415b 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -15,6 +15,7 @@
 import os
 import tempfile
 import ldap
+import time
 
 
 def pytest_namespace():
@@ -193,8 +194,10 @@ def create_casesensitive_posix_user(session_multihost):
 
 
 @pytest.fixture
-def set_case_sensitive_false(session_multihost):
+def set_case_sensitive_false(session_multihost, request):
 """ Set case_sensitive to false in sssd domain section """
+bkup_sssd = 'cp -f /etc/sssd/sssd.conf /etc/sssd/sssd.conf.orig'
+session_multihost.master[0].run_command(bkup_sssd)
 session_multihost.master[0].transport.get_file('/etc/sssd/sssd.conf',
'/tmp/sssd.conf')
 sssdconfig = ConfigParser.SafeConfigParser()
@@ -208,6 +211,14 @@ def set_case_sensitive_false(session_multihost):
'/etc/sssd/sssd.conf')
 session_multihost.master[0].service_sssd('restart')
 
+def restore_sssd():
+""" Restore sssd.conf """
+restore_sssd = 'cp -f /etc/sssd/sssd.conf.orig /etc/sssd/sssd.conf'
+session_multihost.master[0].run_command(restore_sssd)
+session_multihost.master[0].service_sssd('restart')
+time.sleep(5)
+request.addfinalizer(restore_sssd)
+
 
 @pytest.fixture
 def enable_files_domain(session_multihost):

From f8926ab5817696c8825b5a8d2388a002266b1e56 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:31:25 +0530
Subject: [PATCH 2/6] pytest/sudo: Rename create_sudorule to
 case_sensitive_sudorule

Add del_sudo_rule function to delete the sudo rules
after test_sensitivity completes

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 17 ++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 376a3b415b..cfc35d527a 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -254,10 +254,10 @@ def teardown_files_domain_users():
 
 
 @pytest.fixture
-def create_sudorule(session_multihost, create_casesensitive_posix_user):
+def case_sensitive_sudorule(session_multihost,
+create_casesensitive_posix_user,
+request):
 """ Create posix user and groups """
-# pylint: disable=unused-argument
-_pytest_fixtures = [create_casesensitive_posix_user]
 ldap_uri = 'ldap://%s' % (session_multihost.master[0].sys_hostname)
 ds_rootdn = 'cn=Directory Manager'
 ds_rootpw = 'Secret123'
@@ -280,6 +280,17 @@ def create_sudorule(session_multihost, create_casesensitive_posix_user):
 except LdapException:
 pytest.fail("Failed to add sudo rule %s" % rule_dn2)
 
+def del_sensitive_sudo_rule():
+""" Delete sudo rule """
+(ret, _) = ldap_inst.del_dn(rule_dn1)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(rule_dn2)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(sudo_ou)
+assert ret == 'Success'
+time.sleep(5)
+request.addfinalizer(del_sensitive_sudo_rule)
+
 
 @pytest.fixture
 def enable_sss_sudo_nsswitch(session_multihost, tmpdir, request):

From 2e2240c2e3d7dc9be0f85a746855b20390aaa6c0 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:35:43 +0530
Subject: [PATCH 3/6] pytest/sudo: call case_sensitive_sudorule fixture instead
 of create_sudorule

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/test_sudo.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/tests/multihost/basic/test_sudo.py b/src/tests/multihost/basic/test_sudo.py
index ecf41ffb1a..af9b7a8e87 100644
--- a/src/tests/multihost/basic/test_sudo.py
+++ b/src/tests/multihost/basic/test_sudo.py
@@ -6,12 +6,12 @@
 
 class TestSanitySudo(object):
 """ Basic Sanity Test cases for sudo service in sssd """
-def test_case_senitivity(self, multihost, create_sudorule,
+def test_case_senitivity(self, multihost, 

[SSSD] [sssd PR#680][synchronized] pytest: Add test case for Expired sudo rule

2018-10-17 Thread mrniranjan
   URL: https://github.com/SSSD/sssd/pull/680
Author: mrniranjan
 Title: #680: pytest: Add test case for Expired sudo rule
Action: synchronized

To pull the PR as Git branch:
git remote add ghsssd https://github.com/SSSD/sssd
git fetch ghsssd pull/680/head:pr680
git checkout pr680
From 8cddf199d93b5c5e9898cda260524facfe854725 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 14:00:30 +0530
Subject: [PATCH 1/6] pytest/sudo: Modify fixture to restore sssd.conf

Modify set_case_sensitive_false fixture to restore sssd.conf
back to the original sssd.conf after running test_case_senitivity
test case.

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 0d3b831bea..376a3b415b 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -15,6 +15,7 @@
 import os
 import tempfile
 import ldap
+import time
 
 
 def pytest_namespace():
@@ -193,8 +194,10 @@ def create_casesensitive_posix_user(session_multihost):
 
 
 @pytest.fixture
-def set_case_sensitive_false(session_multihost):
+def set_case_sensitive_false(session_multihost, request):
 """ Set case_sensitive to false in sssd domain section """
+bkup_sssd = 'cp -f /etc/sssd/sssd.conf /etc/sssd/sssd.conf.orig'
+session_multihost.master[0].run_command(bkup_sssd)
 session_multihost.master[0].transport.get_file('/etc/sssd/sssd.conf',
'/tmp/sssd.conf')
 sssdconfig = ConfigParser.SafeConfigParser()
@@ -208,6 +211,14 @@ def set_case_sensitive_false(session_multihost):
'/etc/sssd/sssd.conf')
 session_multihost.master[0].service_sssd('restart')
 
+def restore_sssd():
+""" Restore sssd.conf """
+restore_sssd = 'cp -f /etc/sssd/sssd.conf.orig /etc/sssd/sssd.conf'
+session_multihost.master[0].run_command(restore_sssd)
+session_multihost.master[0].service_sssd('restart')
+time.sleep(5)
+request.addfinalizer(restore_sssd)
+
 
 @pytest.fixture
 def enable_files_domain(session_multihost):

From f8926ab5817696c8825b5a8d2388a002266b1e56 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:31:25 +0530
Subject: [PATCH 2/6] pytest/sudo: Rename create_sudorule to
 case_sensitive_sudorule

Add del_sudo_rule function to delete the sudo rules
after test_sensitivity completes

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/conftest.py | 17 ++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/tests/multihost/basic/conftest.py b/src/tests/multihost/basic/conftest.py
index 376a3b415b..cfc35d527a 100644
--- a/src/tests/multihost/basic/conftest.py
+++ b/src/tests/multihost/basic/conftest.py
@@ -254,10 +254,10 @@ def teardown_files_domain_users():
 
 
 @pytest.fixture
-def create_sudorule(session_multihost, create_casesensitive_posix_user):
+def case_sensitive_sudorule(session_multihost,
+create_casesensitive_posix_user,
+request):
 """ Create posix user and groups """
-# pylint: disable=unused-argument
-_pytest_fixtures = [create_casesensitive_posix_user]
 ldap_uri = 'ldap://%s' % (session_multihost.master[0].sys_hostname)
 ds_rootdn = 'cn=Directory Manager'
 ds_rootpw = 'Secret123'
@@ -280,6 +280,17 @@ def create_sudorule(session_multihost, create_casesensitive_posix_user):
 except LdapException:
 pytest.fail("Failed to add sudo rule %s" % rule_dn2)
 
+def del_sensitive_sudo_rule():
+""" Delete sudo rule """
+(ret, _) = ldap_inst.del_dn(rule_dn1)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(rule_dn2)
+assert ret == 'Success'
+(ret, _) = ldap_inst.del_dn(sudo_ou)
+assert ret == 'Success'
+time.sleep(5)
+request.addfinalizer(del_sensitive_sudo_rule)
+
 
 @pytest.fixture
 def enable_sss_sudo_nsswitch(session_multihost, tmpdir, request):

From 2e2240c2e3d7dc9be0f85a746855b20390aaa6c0 Mon Sep 17 00:00:00 2001
From: "Niranjan M.R" 
Date: Tue, 16 Oct 2018 16:35:43 +0530
Subject: [PATCH 3/6] pytest/sudo: call case_sensitive_sudorule fixture instead
 of create_sudorule

Signed-off-by: Niranjan M.R 
---
 src/tests/multihost/basic/test_sudo.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/tests/multihost/basic/test_sudo.py b/src/tests/multihost/basic/test_sudo.py
index ecf41ffb1a..af9b7a8e87 100644
--- a/src/tests/multihost/basic/test_sudo.py
+++ b/src/tests/multihost/basic/test_sudo.py
@@ -6,12 +6,12 @@
 
 class TestSanitySudo(object):
 """ Basic Sanity Test cases for sudo service in sssd """
-def test_case_senitivity(self, multihost, create_sudorule,
+def test_case_senitivity(self, multihost,