diff options
author | 2015-07-11 22:35:07 +0000 | |
---|---|---|
committer | 2015-07-11 22:35:07 +0000 | |
commit | 8a863a79c9448856a8a2c5bfb323f7d6a67b05af (patch) | |
tree | d34a3a7d54d443d99ef63238838a02de0e03fe73 /pw/tests | |
parent | 649b38fd408c5f016d293e4ef66ee4c52cebac8e (diff) | |
download | pw-darwin-8a863a79c9448856a8a2c5bfb323f7d6a67b05af.tar.gz pw-darwin-8a863a79c9448856a8a2c5bfb323f7d6a67b05af.tar.zst pw-darwin-8a863a79c9448856a8a2c5bfb323f7d6a67b05af.zip |
Rework groupmod modification:
Use gr_add(3) when possible to avoid code duplication.
Use a simpler logic to delete members of a group
Diffstat (limited to 'pw/tests')
-rwxr-xr-x | pw/tests/pw_groupmod.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/pw/tests/pw_groupmod.sh b/pw/tests/pw_groupmod.sh index 9ea8a6d..5806925 100755 --- a/pw/tests/pw_groupmod.sh +++ b/pw/tests/pw_groupmod.sh @@ -81,6 +81,32 @@ groupmod_rename_body() { grep "^bar:.*" ${HOME}/group } +atf_test_case groupmod_members +groupmod_members_body() { + populate_etc_skel + + for i in user1 user2 user3 user4; do + atf_check -s exit:0 ${PW} useradd $i + done + + atf_check -s exit:0 ${PW} groupadd foo -M "user1, user2" + atf_check -o inline:"foo:*:1005:user1,user2\n" -s exit:0 \ + ${PW} groupshow foo + atf_check -s exit:0 ${PW} groupmod foo -m "user3, user4" + atf_check -o inline:"foo:*:1005:user1,user2,user3,user4\n" -s exit:0 \ + ${PW} groupshow foo + atf_check -s exit:0 ${PW} groupmod foo -M "user1, user4" + atf_check -o inline:"foo:*:1005:user1,user4\n" -s exit:0 \ + ${PW} groupshow foo + # what about duplicates + atf_check -s exit:0 ${PW} groupmod foo -m "user1, user2, user3, user4" + atf_check -o inline:"foo:*:1005:user1,user4,user2,user3\n" -s exit:0 \ + ${PW} groupshow foo + atf_check -s exit:0 ${PW} groupmod foo -d "user1, user3" + atf_check -o inline:"foo:*:1005:user4,user2\n" -s exit:0 \ + ${PW} groupshow foo +} + atf_init_test_cases() { atf_add_test_case groupmod_user atf_add_test_case groupmod_invalid_user @@ -88,4 +114,5 @@ atf_init_test_cases() { atf_add_test_case usermod_bug_185666 atf_add_test_case do_not_duplicate_group_on_gid_change atf_add_test_case groupmod_rename + atf_add_test_case groupmod_members } |