summaryrefslogtreecommitdiffstats
path: root/pw/tests
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2015-07-12 21:43:57 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2015-07-12 21:43:57 +0000
commita5020ce2c4306656996725b75203311f5ebf8e91 (patch)
treeac7e4a4244619d8a53d0f7b5e6972c823b1194af /pw/tests
parent82e3411026949c74f9a726bb418b3fdcbc4e9fd0 (diff)
downloadpw-darwin-a5020ce2c4306656996725b75203311f5ebf8e91.tar.gz
pw-darwin-a5020ce2c4306656996725b75203311f5ebf8e91.tar.zst
pw-darwin-a5020ce2c4306656996725b75203311f5ebf8e91.zip
pw -R <rootdir> userdel can now cleanup installation
Rewrite rm_r to use *at function, allowing to remove home directories along with users. only crontabs and at(1) installation are not removed Relnotes: yes
Diffstat (limited to 'pw/tests')
-rwxr-xr-xpw/tests/pw_userdel.sh20
1 files changed, 20 insertions, 0 deletions
diff --git a/pw/tests/pw_userdel.sh b/pw/tests/pw_userdel.sh
index 71a7033..744568a 100755
--- a/pw/tests/pw_userdel.sh
+++ b/pw/tests/pw_userdel.sh
@@ -31,7 +31,27 @@ user_do_not_try_to_delete_root_if_user_unknown_body() {
${PW} userdel -u plop
}
+atf_test_case delete_files
+delete_files_body() {
+ populate_root_etc_skel
+
+ mkdir -p ${HOME}/skel
+ touch ${HOME}/skel/a
+ mkdir -p ${HOME}/home
+ mkdir -p ${HOME}/var/mail
+ echo "foo wedontcare" > ${HOME}/etc/opiekeys
+ atf_check -s exit:0 ${RPW} useradd foo -k skel -m
+ test -d ${HOME}/home || atf_fail "Fail to create home directory"
+ test -f ${HOME}/var/mail/foo || atf_fail "Mail file not created"
+ atf_check -s exit:0 ${RPW} userdel foo -r
+ atf_check -s exit:0 -o inline:"#oo wedontcare\n" cat ${HOME}/etc/opiekeys
+ if test -f ${HOME}/var/mail/foo; then
+ atf_fail "Mail file not removed"
+ fi
+}
+
atf_init_test_cases() {
atf_add_test_case rmuser_seperate_group
atf_add_test_case user_do_not_try_to_delete_root_if_user_unknown
+ atf_add_test_case delete_files
}