diff options
author | Christian Breunig <christian@breunig.cc> | 2024-06-24 16:02:47 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-24 16:02:47 +0200 |
commit | 4cd052bddcecd0d24c72521564f9844f21ffc4ea (patch) | |
tree | 41ad074006937d93a7a7c602fccc6b74e46a58b7 /smoketest | |
parent | 819b4a3556481ec516caca2731714ff69a57c2a5 (diff) | |
parent | 4c7719efa27d9d2966b70b924c90aa2c90022388 (diff) | |
download | vyos-1x-4cd052bddcecd0d24c72521564f9844f21ffc4ea.tar.gz vyos-1x-4cd052bddcecd0d24c72521564f9844f21ffc4ea.zip |
Merge pull request #3701 from jestabro/configd-drop-env-sudo
configd: T6504: send sudo_user on session init and set env variable
Diffstat (limited to 'smoketest')
-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) |