summaryrefslogtreecommitdiff
path: root/python/samba/tests/gpo.py
diff options
context:
space:
mode:
authorDavid Mulder <dmulder@samba.org>2022-12-09 10:31:49 -0700
committerJeremy Allison <jra@samba.org>2022-12-21 02:04:37 +0000
commit0a1778cde011fecb000f5b7e6f43920f5ab59da0 (patch)
tree3059358268dc360b9a22a73e8cd0e594a4afde3e /python/samba/tests/gpo.py
parentc435c105c511bd984b6d1bda3964100ad5ec2c31 (diff)
downloadsamba-0a1778cde011fecb000f5b7e6f43920f5ab59da0.tar.gz
gp: Ensure rsop is tested for every CSE
A bug cropped up in the rsop that was causing a crash because this wasn't being tested. Signed-off-by: David Mulder <dmulder@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'python/samba/tests/gpo.py')
-rw-r--r--python/samba/tests/gpo.py105
1 files changed, 101 insertions, 4 deletions
diff --git a/python/samba/tests/gpo.py b/python/samba/tests/gpo.py
index d060b5a4838..91a97e05898 100644
--- a/python/samba/tests/gpo.py
+++ b/python/samba/tests/gpo.py
@@ -5330,6 +5330,10 @@ class GPOTests(tests.TestCase):
self.assertIn(b'hello world', out,
'%s script execution failed' % keyname.decode())
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -5381,6 +5385,10 @@ class GPOTests(tests.TestCase):
open(os.path.join(dname, sudoers[0]), 'r').read(),
'The sudoers entry was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -5479,6 +5487,10 @@ class GPOTests(tests.TestCase):
self.assertIn(data_no_principal, output,
'The sudoers entry was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -5623,13 +5635,14 @@ class GPOTests(tests.TestCase):
'Login Prompt Message not applied')
self.assertEquals(ret['/etc/issue'], e4.data,
'Login Prompt Message not set')
+
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
unstage_file(gpofile % g.name)
unstage_file(reg_pol % g.name)
- # Check that a call to gpupdate --rsop also succeeds
- ret = rsop(self.lp)
- self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
-
def test_gp_unapply(self):
cache_dir = self.lp.get('cache directory')
local_path = self.lp.cache_path('gpo_cache')
@@ -5772,6 +5785,10 @@ class GPOTests(tests.TestCase):
ldap_timeout = lp.get('ldap timeout')
self.assertEquals(ldap_timeout, 9999, 'ldap timeout was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -5843,6 +5860,10 @@ class GPOTests(tests.TestCase):
data = open(issue_file, 'r').read()
self.assertEquals(data, e2.data, 'Login Prompt Message not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unapply policy, and ensure the test files are removed
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -5925,6 +5946,10 @@ class GPOTests(tests.TestCase):
self.assertIn('ln -s %s %s' % (test_source, test_target),
list(ret.values())[0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unstage the manifest.xml file
unstage_file(manifest)
@@ -6012,6 +6037,10 @@ class GPOTests(tests.TestCase):
self.assertIn('-rwxr-xr-x', list(ret.values())[0][0],
'The target permissions were not listed by rsop')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unstage the manifest and source files
unstage_file(manifest)
unstage_file(source_file)
@@ -6072,6 +6101,10 @@ class GPOTests(tests.TestCase):
self.assertIn(data, open(gp_cfg, 'r').read(),
'The sshd_config entry was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6151,6 +6184,10 @@ class GPOTests(tests.TestCase):
self.assertIn(entry, list(ret.values())[0][0],
'The target entry was not listed by rsop')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unstage the manifest.xml and script files
unstage_file(manifest)
@@ -6197,6 +6234,10 @@ class GPOTests(tests.TestCase):
self.assertIn(entry, list(ret.values())[0][0],
'The target entry was not listed by rsop')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unstage the manifest.xml and script files
unstage_file(manifest)
@@ -6245,6 +6286,10 @@ class GPOTests(tests.TestCase):
self.assertIn(entry, list(ret.values())[0][0],
'The target entry was not listed by rsop')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unstage the manifest.xml and script files
unstage_file(manifest)
unstage_file(test_script)
@@ -6288,6 +6333,10 @@ class GPOTests(tests.TestCase):
self.assertEquals(open(f.name, 'r').read(), text.text,
'The motd was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6337,6 +6386,10 @@ class GPOTests(tests.TestCase):
self.assertEquals(open(f.name, 'r').read(), text.text,
'The issue was not applied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6469,6 +6522,10 @@ class GPOTests(tests.TestCase):
self.assertIn('-:%s\\badguy:ALL' % realm, data)
self.assertIn('-:%s\\badguys:ALL' % realm, data)
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6670,6 +6727,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6776,6 +6837,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6847,6 +6912,10 @@ class GPOTests(tests.TestCase):
self.assertIn(entry, crontab,
'The crontab entry was not installed')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(os.environ.get('DC_USERNAME'))
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -6904,6 +6973,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unapply the policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7007,6 +7080,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unapply the policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7081,6 +7158,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Unapply the policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7182,6 +7263,10 @@ class GPOTests(tests.TestCase):
# Verify RSOP does not fail
ext.rsop([g for g in gpos if g.name == guid][0])
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7263,6 +7348,10 @@ class GPOTests(tests.TestCase):
self.assertIn(e2.data, open(sudoers_file, 'r').read(),
'The sudoers entry was not reapplied')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7315,6 +7404,10 @@ class GPOTests(tests.TestCase):
data = open(fname, 'rb').read()
self.assertIn(get_bytes(e.data), data, 'Cron entry is missing')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(machine_creds.get_username())
del_gpos = get_deleted_gpos_list(gp_db, [])
@@ -7367,6 +7460,10 @@ class GPOTests(tests.TestCase):
self.assertIn(get_bytes(e.data), crontab,
'The crontab entry was not installed')
+ # Check that a call to gpupdate --rsop also succeeds
+ ret = rsop(self.lp)
+ self.assertEquals(ret, 0, 'gpupdate --rsop failed!')
+
# Remove policy
gp_db = store.get_gplog(os.environ.get('DC_USERNAME'))
del_gpos = get_deleted_gpos_list(gp_db, [])