Add tests from the old svn tree
We're losing the svn history (which we could probably keep if we tried hard enough) but don't consider that worthwhile. Note these tests are destructive, so run them only in a throwaway environment like a chroot, container, or vm. The tests/run.all script should be the one which launches all the tests. Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
This commit is contained in:
		@@ -0,0 +1 @@
 | 
			
		||||
user foo exists, UID 1000
 | 
			
		||||
@@ -0,0 +1,36 @@
 | 
			
		||||
# Default values for useradd(8)
 | 
			
		||||
#
 | 
			
		||||
# The SHELL variable specifies the default login shell on your
 | 
			
		||||
# system.
 | 
			
		||||
# Similar to DHSELL in adduser. However, we use "sh" here because
 | 
			
		||||
# useradd is a low level utility and should be as general
 | 
			
		||||
# as possible
 | 
			
		||||
SHELL=/bin/foobar
 | 
			
		||||
#
 | 
			
		||||
# The default group for users
 | 
			
		||||
# 100=users on Debian systems
 | 
			
		||||
# Same as USERS_GID in adduser
 | 
			
		||||
# This argument is used when the -n flag is specified.
 | 
			
		||||
# The default behavior (when -n and -g are not specified) is to create a
 | 
			
		||||
# primary user group with the same name as the user being added to the
 | 
			
		||||
# system.
 | 
			
		||||
GROUP=10
 | 
			
		||||
#
 | 
			
		||||
# The default home directory. Same as DHOME for adduser
 | 
			
		||||
HOME=/tmp
 | 
			
		||||
#
 | 
			
		||||
# The number of days after a password expires until the account 
 | 
			
		||||
# is permanently disabled
 | 
			
		||||
INACTIVE=12
 | 
			
		||||
#
 | 
			
		||||
# The default expire date
 | 
			
		||||
EXPIRE=2007-12-02
 | 
			
		||||
#
 | 
			
		||||
# The SKEL variable specifies the directory containing "skeletal" user
 | 
			
		||||
# files; in other words, files such as a sample .profile that will be
 | 
			
		||||
# copied to the new user's home directory when it is created.
 | 
			
		||||
# SKEL=/etc/skel
 | 
			
		||||
#
 | 
			
		||||
# Defines whether the mail spool should be created while
 | 
			
		||||
# creating the account
 | 
			
		||||
# CREATE_MAIL_SPOOL=yes
 | 
			
		||||
@@ -0,0 +1,42 @@
 | 
			
		||||
root:x:0:
 | 
			
		||||
daemon:x:1:
 | 
			
		||||
bin:x:2:
 | 
			
		||||
sys:x:3:root
 | 
			
		||||
adm:x:4:root
 | 
			
		||||
tty:x:5:
 | 
			
		||||
disk:x:6:
 | 
			
		||||
lp:x:7:root
 | 
			
		||||
mail:x:8:
 | 
			
		||||
news:x:9:
 | 
			
		||||
uucp:x:10:
 | 
			
		||||
man:x:12:
 | 
			
		||||
proxy:x:13:
 | 
			
		||||
kmem:x:15:
 | 
			
		||||
dialout:x:20:
 | 
			
		||||
fax:x:21:
 | 
			
		||||
voice:x:22:
 | 
			
		||||
cdrom:x:24:
 | 
			
		||||
floppy:x:25:
 | 
			
		||||
tape:x:26:
 | 
			
		||||
sudo:x:27:
 | 
			
		||||
audio:x:29:
 | 
			
		||||
dip:x:30:
 | 
			
		||||
www-data:x:33:
 | 
			
		||||
backup:x:34:
 | 
			
		||||
operator:x:37:
 | 
			
		||||
list:x:38:
 | 
			
		||||
irc:x:39:
 | 
			
		||||
src:x:40:
 | 
			
		||||
gnats:x:41:
 | 
			
		||||
shadow:x:42:
 | 
			
		||||
utmp:x:43:
 | 
			
		||||
video:x:44:
 | 
			
		||||
sasl:x:45:
 | 
			
		||||
plugdev:x:46:
 | 
			
		||||
staff:x:50:
 | 
			
		||||
games:x:60:
 | 
			
		||||
users:x:100:
 | 
			
		||||
nogroup:x:65534:
 | 
			
		||||
crontab:x:101:
 | 
			
		||||
Debian-exim:x:102:
 | 
			
		||||
foo:x:1000:
 | 
			
		||||
@@ -0,0 +1,42 @@
 | 
			
		||||
root:*::
 | 
			
		||||
daemon:*::
 | 
			
		||||
bin:*::
 | 
			
		||||
sys:*::root
 | 
			
		||||
adm:*::root
 | 
			
		||||
tty:*::
 | 
			
		||||
disk:*::
 | 
			
		||||
lp:*::root
 | 
			
		||||
mail:*::
 | 
			
		||||
news:*::
 | 
			
		||||
uucp:*::
 | 
			
		||||
man:*::
 | 
			
		||||
proxy:*::
 | 
			
		||||
kmem:*::
 | 
			
		||||
dialout:*::
 | 
			
		||||
fax:*::
 | 
			
		||||
voice:*::
 | 
			
		||||
cdrom:*::
 | 
			
		||||
floppy:*::
 | 
			
		||||
tape:*::
 | 
			
		||||
sudo:*::
 | 
			
		||||
audio:*::
 | 
			
		||||
dip:*::
 | 
			
		||||
www-data:*::
 | 
			
		||||
backup:*::
 | 
			
		||||
operator:*::
 | 
			
		||||
list:*::
 | 
			
		||||
irc:*::
 | 
			
		||||
src:*::
 | 
			
		||||
gnats:*::
 | 
			
		||||
shadow:*::
 | 
			
		||||
utmp:*::
 | 
			
		||||
video:*::
 | 
			
		||||
sasl:*::
 | 
			
		||||
plugdev:*::
 | 
			
		||||
staff:*::
 | 
			
		||||
games:*::
 | 
			
		||||
users:*::
 | 
			
		||||
nogroup:*::
 | 
			
		||||
crontab:x::
 | 
			
		||||
Debian-exim:x::
 | 
			
		||||
foo:*::
 | 
			
		||||
@@ -0,0 +1,20 @@
 | 
			
		||||
root:x:0:0:root:/root:/bin/bash
 | 
			
		||||
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
 | 
			
		||||
bin:x:2:2:bin:/bin:/bin/sh
 | 
			
		||||
sys:x:3:3:sys:/dev:/bin/sh
 | 
			
		||||
sync:x:4:65534:sync:/bin:/bin/sync
 | 
			
		||||
games:x:5:60:games:/usr/games:/bin/sh
 | 
			
		||||
man:x:6:12:man:/var/cache/man:/bin/sh
 | 
			
		||||
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
 | 
			
		||||
mail:x:8:8:mail:/var/mail:/bin/sh
 | 
			
		||||
news:x:9:9:news:/var/spool/news:/bin/sh
 | 
			
		||||
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
 | 
			
		||||
proxy:x:13:13:proxy:/bin:/bin/sh
 | 
			
		||||
www-data:x:33:33:www-data:/var/www:/bin/sh
 | 
			
		||||
backup:x:34:34:backup:/var/backups:/bin/sh
 | 
			
		||||
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
 | 
			
		||||
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
 | 
			
		||||
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
 | 
			
		||||
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
 | 
			
		||||
Debian-exim:x:102:102::/var/spool/exim4:/bin/false
 | 
			
		||||
foo:x:1000:1000::/home/foo:/bin/false
 | 
			
		||||
@@ -0,0 +1,20 @@
 | 
			
		||||
root:$1$NBLBLIXb$WUgojj1bNuxWEADQGt1m9.:12991:0:99999:7:::
 | 
			
		||||
daemon:*:12977:0:99999:7:::
 | 
			
		||||
bin:*:12977:0:99999:7:::
 | 
			
		||||
sys:*:12977:0:99999:7:::
 | 
			
		||||
sync:*:12977:0:99999:7:::
 | 
			
		||||
games:*:12977:0:99999:7:::
 | 
			
		||||
man:*:12977:0:99999:7:::
 | 
			
		||||
lp:*:12977:0:99999:7:::
 | 
			
		||||
mail:*:12977:0:99999:7:::
 | 
			
		||||
news:*:12977:0:99999:7:::
 | 
			
		||||
uucp:*:12977:0:99999:7:::
 | 
			
		||||
proxy:*:12977:0:99999:7:::
 | 
			
		||||
www-data:*:12977:0:99999:7:::
 | 
			
		||||
backup:*:12977:0:99999:7:::
 | 
			
		||||
list:*:12977:0:99999:7:::
 | 
			
		||||
irc:*:12977:0:99999:7:::
 | 
			
		||||
gnats:*:12977:0:99999:7:::
 | 
			
		||||
nobody:*:12977:0:99999:7:::
 | 
			
		||||
Debian-exim:!:12977:0:99999:7:::
 | 
			
		||||
foo:!:12977:0:99999:7:::
 | 
			
		||||
@@ -0,0 +1 @@
 | 
			
		||||
-rw-r--r-- foo:mail `/var/mail/foo'
 | 
			
		||||
@@ -0,0 +1,20 @@
 | 
			
		||||
root:x:0:0:root:/root:/bin/bash
 | 
			
		||||
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
 | 
			
		||||
bin:x:2:2:bin:/bin:/bin/sh
 | 
			
		||||
sys:x:3:3:sys:/dev:/bin/sh
 | 
			
		||||
sync:x:4:65534:sync:/bin:/bin/sync
 | 
			
		||||
games:x:5:60:games:/usr/games:/bin/sh
 | 
			
		||||
man:x:6:12:man:/var/cache/man:/bin/sh
 | 
			
		||||
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
 | 
			
		||||
mail:x:8:8:mail:/var/mail:/bin/sh
 | 
			
		||||
news:x:9:9:news:/var/spool/news:/bin/sh
 | 
			
		||||
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
 | 
			
		||||
proxy:x:13:13:proxy:/bin:/bin/sh
 | 
			
		||||
www-data:x:33:33:www-data:/var/www:/bin/sh
 | 
			
		||||
backup:x:34:34:backup:/var/backups:/bin/sh
 | 
			
		||||
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
 | 
			
		||||
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
 | 
			
		||||
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
 | 
			
		||||
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
 | 
			
		||||
Debian-exim:x:102:102::/var/spool/exim4:/bin/false
 | 
			
		||||
foo:x:4242:1000::/home/foo:/bin/false
 | 
			
		||||
							
								
								
									
										54
									
								
								tests/usertools/usermod/45_usermod-u_change_mailbox_owner/usermod.test
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										54
									
								
								tests/usertools/usermod/45_usermod-u_change_mailbox_owner/usermod.test
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
cd $(dirname $0)
 | 
			
		||||
 | 
			
		||||
. ../../../common/config.sh
 | 
			
		||||
. ../../../common/log.sh
 | 
			
		||||
 | 
			
		||||
log_start "$0" "usermod changes the mailbox ownership"
 | 
			
		||||
 | 
			
		||||
save_config
 | 
			
		||||
 | 
			
		||||
# restore the files on exit
 | 
			
		||||
trap 'log_status "$0" "FAILURE"; restore_config; rm -f /var/mail/foo' 0
 | 
			
		||||
 | 
			
		||||
change_config
 | 
			
		||||
 | 
			
		||||
echo -n "Create foo mailbox /var/mail/foo ..."
 | 
			
		||||
touch /var/mail/foo
 | 
			
		||||
chown foo:mail /var/mail/foo
 | 
			
		||||
echo "OK"
 | 
			
		||||
 | 
			
		||||
echo -n "Change the user's UID (usermod -u 4242 foo)..."
 | 
			
		||||
usermod -u 4242 foo
 | 
			
		||||
echo "OK"
 | 
			
		||||
 | 
			
		||||
echo -n "Check the passwd file..."
 | 
			
		||||
../../../common/compare_file.pl data/passwd /etc/passwd
 | 
			
		||||
echo "OK"
 | 
			
		||||
echo -n "Check the group file..."
 | 
			
		||||
../../../common/compare_file.pl config/etc/group /etc/group
 | 
			
		||||
echo "OK"
 | 
			
		||||
echo -n "Check the shadow file..."
 | 
			
		||||
../../../common/compare_file.pl config/etc/shadow /etc/shadow
 | 
			
		||||
echo "OK"
 | 
			
		||||
echo -n "Check the gshadow file..."
 | 
			
		||||
../../../common/compare_file.pl config/etc/gshadow /etc/gshadow
 | 
			
		||||
echo "OK"
 | 
			
		||||
echo -n "Check that the mailbox was moved..."
 | 
			
		||||
test -f /var/mail/foo
 | 
			
		||||
echo "OK"
 | 
			
		||||
echo -n "Check permissions of the mailbox..."
 | 
			
		||||
stat --printf "%A %U:%G %N\n" /var/mail/foo | sort > tmp/mailbox.perms
 | 
			
		||||
diff -rauN data/mailbox.perms tmp/mailbox.perms
 | 
			
		||||
echo "OK"
 | 
			
		||||
rm -f tmp/mailbox.perms
 | 
			
		||||
 | 
			
		||||
rm -f /var/mail/foo
 | 
			
		||||
 | 
			
		||||
log_status "$0" "SUCCESS"
 | 
			
		||||
restore_config
 | 
			
		||||
trap '' 0
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user