From: Iker Pedrosa Date: Mon, 15 Dec 2025 11:47:08 +0000 (+0100) Subject: tests/system/tests/test_groupadd.py: add test for groupadd -U with empty string X-Git-Tag: 4.19.0~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=07d9c2da21a6990173d25d8b2df805457d89a644;p=thirdparty%2Fshadow.git tests/system/tests/test_groupadd.py: add test for groupadd -U with empty string Test verifies that groupadd -U '' correctly creates group with no members. Signed-off-by: Iker Pedrosa --- diff --git a/tests/system/tests/test_groupadd.py b/tests/system/tests/test_groupadd.py index a979919de..b46621b6e 100644 --- a/tests/system/tests/test_groupadd.py +++ b/tests/system/tests/test_groupadd.py @@ -36,3 +36,33 @@ def test_groupadd__add_group(shadow: Shadow): assert gshadow_entry is not None, "Group should be found" assert gshadow_entry.name == "tgroup", "Incorrect groupname" assert gshadow_entry.password == "!", "Incorrect password" + + +@pytest.mark.topology(KnownTopology.Shadow) +def test_groupadd__u_option_empty_string_clears_members(shadow: Shadow): + """ + :title: Test groupadd -U option with empty user list + :setup: + 1. None required + :steps: + 1. Run groupadd with -U option and empty string parameter + 2. Verify group exists after creation + 3. Confirm group has no members + :expectedresults: + 1. groupadd -U '' command completes successfully + 2. Group entry is created and accessible + 3. Group member list is empty (no users assigned to group) + :customerscenario: False + """ + shadow.groupadd("-U '' tgroup") + + 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 not group_entry.members, "Group should have no members" + + 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 not gshadow_entry.members, "Group should have no members"