summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorBjörn Baumbach <bb@sernet.de>2020-10-29 12:38:51 +0100
committerDouglas Bagnall <dbagnall@samba.org>2020-11-04 00:19:25 +0000
commita1b021200e3d068631798942a1f219b26afadca7 (patch)
tree89b98b79032ff47a57ddb3befb78000ea9b3c1e7 /source4
parent0bc93500a8bfb268085b02379375741903961f4e (diff)
downloadsamba-a1b021200e3d068631798942a1f219b26afadca7.tar.gz
selftest: add test for new "samba-tool user unlock" command
Signed-off-by: Björn Baumbach <bb@sernet.de> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org> Autobuild-Date(master): Wed Nov 4 00:19:25 UTC 2020 on sn-devel-184
Diffstat (limited to 'source4')
-rwxr-xr-xsource4/dsdb/tests/python/password_lockout.py20
-rw-r--r--source4/dsdb/tests/python/password_lockout_base.py1
2 files changed, 21 insertions, 0 deletions
diff --git a/source4/dsdb/tests/python/password_lockout.py b/source4/dsdb/tests/python/password_lockout.py
index cbe15c33742..445944862b8 100755
--- a/source4/dsdb/tests/python/password_lockout.py
+++ b/source4/dsdb/tests/python/password_lockout.py
@@ -17,6 +17,7 @@ sys.path.insert(0, "bin/python")
import samba
from samba.tests.subunitrun import TestProgram, SubunitOptions
+from samba.netcmd.main import cmd_sambatool
import samba.getopt as options
@@ -133,6 +134,17 @@ replace: lockoutTime
lockoutTime: 0
""")
+ def _reset_samba_tool(self, res):
+ username = res[0]["sAMAccountName"][0]
+
+ cmd = cmd_sambatool.subcommands['user'].subcommands['unlock']
+ result = cmd._run("samba-tool user unlock",
+ username,
+ "-H%s" % host_url,
+ "-U%s%%%s" % (global_creds.get_username(),
+ global_creds.get_password()))
+ self.assertEqual(result, None)
+
def _reset_ldap_userAccountControl(self, res):
self.assertTrue("userAccountControl" in res[0])
self.assertTrue("msDS-User-Account-Control-Computed" in res[0])
@@ -157,6 +169,8 @@ userAccountControl: %d
self._reset_ldap_lockoutTime(res)
elif method == "samr":
self._reset_samr(res)
+ elif method == "samba-tool":
+ self._reset_samba_tool(res)
else:
self.assertTrue(False, msg="Invalid reset method[%s]" % method)
@@ -635,6 +649,12 @@ userPassword: thatsAcomplPASS2XYZ
"samr",
initial_lastlogon_relation='greater')
+ # just test "samba-tool user unlock" command once
+ def test_userPassword_lockout_with_clear_change_krb5_ldap_samba_tool(self):
+ self._test_userPassword_lockout_with_clear_change(self.lockout1krb5_creds,
+ self.lockout2krb5_ldb,
+ "samba-tool")
+
def test_multiple_logon_krb5(self):
self._test_multiple_logon(self.lockout1krb5_creds)
diff --git a/source4/dsdb/tests/python/password_lockout_base.py b/source4/dsdb/tests/python/password_lockout_base.py
index 17ae807faf6..0f9617da1e6 100644
--- a/source4/dsdb/tests/python/password_lockout_base.py
+++ b/source4/dsdb/tests/python/password_lockout_base.py
@@ -113,6 +113,7 @@ class BasePasswordTestCase(PasswordTestCase):
print("\033[01;32m %s \033[00m\n" % msg)
attrs = [
"objectSid",
+ "sAMAccountName",
"badPwdCount",
"badPasswordTime",
"lastLogon",