3 # Import helper functions
4 . $(atf_get_srcdir)/helper_functions.shin
7 # Test that a user can be deleted when another user is part of this
8 # user's default group and does not go into an infinate loop.
10 atf_test_case rmuser_seperate_group cleanup
11 rmuser_seperate_group_head() {
12 atf_set "timeout" "30"
14 rmuser_seperate_group_body() {
16 ${PW} useradd test || atf_fail "Creating test user"
17 ${PW} groupmod test -M 'test,root' || \
18 atf_fail "Modifying the group"
19 ${PW} userdel test || atf_fail "Delete the test user"
23 atf_test_case user_do_not_try_to_delete_root_if_user_unknown
24 user_do_not_try_to_delete_root_if_user_unknown_head() {
26 "Make sure not to try to remove root if deleting an unknown user"
28 user_do_not_try_to_delete_root_if_user_unknown_body() {
30 atf_check -e inline:"pw: Bad id 'plop': invalid\n" -s exit:64 -x \
34 atf_test_case delete_files
36 populate_root_etc_skel
41 mkdir -p ${HOME}/var/mail
42 echo "foo wedontcare" > ${HOME}/etc/opiekeys
43 atf_check -s exit:0 ${RPW} useradd foo -k /skel -m
44 test -d ${HOME}/home || atf_fail "Fail to create home directory"
45 test -f ${HOME}/var/mail/foo || atf_fail "Mail file not created"
46 atf_check -s exit:0 ${RPW} userdel foo -r
47 atf_check -s exit:0 -o inline:"#oo wedontcare\n" cat ${HOME}/etc/opiekeys
48 if test -f ${HOME}/var/mail/foo; then
49 atf_fail "Mail file not removed"
53 atf_test_case delete_numeric_name
54 delete_numeric_name_body() {
57 atf_check ${PW} useradd -n foo -u 4001
58 atf_check -e inline:"pw: no such user \`4001'\n" -s exit:67 \
62 atf_test_case home_not_a_dir
63 home_not_a_dir_body() {
64 populate_root_etc_skel
66 atf_check ${RPW} useradd foo -d /foo
67 atf_check ${RPW} userdel foo -r
70 atf_init_test_cases() {
71 atf_add_test_case rmuser_seperate_group
72 atf_add_test_case user_do_not_try_to_delete_root_if_user_unknown
73 atf_add_test_case delete_files
74 atf_add_test_case delete_numeric_name
75 atf_add_test_case home_not_a_dir