From: Iker Pedrosa Date: Tue, 19 Aug 2025 09:26:18 +0000 (+0200) Subject: tests/system/tests/test_groupmems.py: add user to group as root user X-Git-Tag: 4.19.0-rc1~21 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06df19464c061fa3987e7cfb9bf419cec652c187;p=thirdparty%2Fshadow.git tests/system/tests/test_groupmems.py: add user to group as root user This is the transformation to Python of the test located in `tests/grouptools/groupmems/01_groupmems_root_add_user/groupmems.test`, which checks that `groupmems` is able to add a user to a group running as the root user. Signed-off-by: Iker Pedrosa --- diff --git a/tests/system/tests/test_groupmems.py b/tests/system/tests/test_groupmems.py new file mode 100644 index 000000000..f59d49c86 --- /dev/null +++ b/tests/system/tests/test_groupmems.py @@ -0,0 +1,41 @@ +""" +Test groupmems +""" + +from __future__ import annotations + +import pytest + +from framework.roles.shadow import Shadow +from framework.topology import KnownTopology + + +@pytest.mark.topology(KnownTopology.Shadow) +def test_groupmems__add_user_as_root(shadow: Shadow): + """ + :title: Add user to group as root user + :setup: + 1. Create test user and group + :steps: + 1. Add user to group using groupmems as root + 2. Check group and gshadow entry + :expectedresults: + 1. User is added to group + 2. group and gshadow entry values are correct + :customerscenario: False + """ + shadow.useradd("tuser") + shadow.groupadd("tgroup") + + shadow.groupmems("-g tgroup -a tuser") + + group_entry = shadow.tools.getent.group("tgroup") + assert group_entry is not None, "Group should be found" + assert group_entry.name == "tgroup", "Incorrect groupname" + assert "tuser" in group_entry.members, "User should be member of group" + + if shadow.host.features["gshadow"]: + gshadow_entry = shadow.tools.getent.gshadow("tgroup") + assert gshadow_entry is not None, "Group should be found" + assert gshadow_entry.name == "tgroup", "Incorrect groupname" + assert gshadow_entry.password == "!", "Incorrect password"