diff options
Diffstat (limited to 'testsuite/test2.pl')
-rw-r--r-- | testsuite/test2.pl | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/testsuite/test2.pl b/testsuite/test2.pl new file mode 100644 index 0000000..de0aafe --- /dev/null +++ b/testsuite/test2.pl @@ -0,0 +1,44 @@ +#!/usr/bin/perl -w + +# expect: +# - a new system user $USER +# - added to group nogroup +# - home directory /home/$USER +# - removal works + +use strict; +use lib_test; + +my $groupname = "nogroup"; +my $username = find_unused_name(); +my $homedir = "/home/$username"; +my $cmd = "adduser --system --home $homedir $username"; + +if (!defined (getpwnam($username))) { + print "Testing $cmd... "; + `$cmd`; + my $error = ($?>>8); + if ($error) { + print "failed\n adduser returned an errorcode != 0 ($error)\n"; + exit $error; + } + assert(check_user_exist ($username)); + assert(check_homedir_exist($username,$homedir)); + assert(check_group_exist($groupname)); + assert(check_user_in_group ($username,$groupname)); + print "ok\n"; +} + +$cmd = "deluser --remove-home $username"; +if (defined (getpwnam($username))) { + print "Testing $cmd... "; + `$cmd`; + my $error = ($?>>8); + if ($error) { + print "failed\n deluser returned an errorcode != 0 ($error)\n"; + exit $error; + } + assert(check_user_not_exist ($username)); + assert(check_homedir_not_exist($homedir)); + print "ok\n"; +} |