diff options
author | Christian Breunig <christian@breunig.cc> | 2024-06-24 19:34:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-24 19:34:05 +0200 |
commit | 0259c4337c80264d5818193a7023e5bd652b36af (patch) | |
tree | 7e8a8f89e20d89a67556a6140f24b474b3ad19ee /smoketest/scripts | |
parent | 340e44c59663d2b94e7b1fddb05c49a3ad737938 (diff) | |
parent | 99c81fbe8fa0d6dd257c00a8e7fe1c5e1a15ca72 (diff) | |
download | vyos-1x-0259c4337c80264d5818193a7023e5bd652b36af.tar.gz vyos-1x-0259c4337c80264d5818193a7023e5bd652b36af.zip |
Merge pull request #3719 from vyos/mergify/bp/circinus/pr-3701
configd: T6504: send sudo_user on session init and set env variable (backport #3701)
Diffstat (limited to 'smoketest/scripts')
-rw-r--r-- | smoketest/scripts/cli/base_vyostest_shim.py | 5 | ||||
-rwxr-xr-x | smoketest/scripts/cli/test_system_login.py | 10 |
2 files changed, 15 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/base_vyostest_shim.py b/smoketest/scripts/cli/base_vyostest_shim.py index efaa74fe0..4bcc50453 100644 --- a/smoketest/scripts/cli/base_vyostest_shim.py +++ b/smoketest/scripts/cli/base_vyostest_shim.py @@ -74,6 +74,11 @@ class VyOSUnitTestSHIM: print('del ' + ' '.join(config)) self._session.delete(config) + def cli_discard(self): + if self.debug: + print('DISCARD') + self._session.discard() + def cli_commit(self): self._session.commit() # during a commit there is a process opening commit_lock, and run() returns 0 diff --git a/smoketest/scripts/cli/test_system_login.py b/smoketest/scripts/cli/test_system_login.py index 3f249660d..28abba012 100755 --- a/smoketest/scripts/cli/test_system_login.py +++ b/smoketest/scripts/cli/test_system_login.py @@ -24,6 +24,7 @@ from subprocess import Popen, PIPE from pwd import getpwall from vyos.configsession import ConfigSessionError +from vyos.utils.auth import get_current_user from vyos.utils.process import cmd from vyos.utils.file import read_file from vyos.template import inc_ip @@ -334,5 +335,14 @@ class TestSystemLogin(VyOSUnitTestSHIM.TestCase): self.assertIn(f'secret={tacacs_secret}', nss_tacacs_conf) self.assertIn(f'server={server}', nss_tacacs_conf) + def test_delete_current_user(self): + current_user = get_current_user() + + # We are not allowed to delete the current user + self.cli_delete(base_path + ['user', current_user]) + with self.assertRaises(ConfigSessionError): + self.cli_commit() + self.cli_discard() + if __name__ == '__main__': unittest.main(verbosity=2) |