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:
1
tests/newusers/49_multiple_system_users/config.txt
Normal file
1
tests/newusers/49_multiple_system_users/config.txt
Normal file
@@ -0,0 +1 @@
|
||||
User foo exists, with password fooPass
|
43
tests/newusers/49_multiple_system_users/config/etc/group
Normal file
43
tests/newusers/49_multiple_system_users/config/etc/group
Normal file
@@ -0,0 +1,43 @@
|
||||
root:x:0:
|
||||
daemon:x:1:
|
||||
bin:x:2:
|
||||
sys:x:3:
|
||||
adm:x:4:
|
||||
tty:x:5:
|
||||
disk:x:6:
|
||||
lp:x:7:
|
||||
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:65535:foo
|
||||
fooo:x:997:
|
43
tests/newusers/49_multiple_system_users/config/etc/gshadow
Normal file
43
tests/newusers/49_multiple_system_users/config/etc/gshadow
Normal file
@@ -0,0 +1,43 @@
|
||||
root:*::
|
||||
daemon:*::
|
||||
bin:*::
|
||||
sys:*::
|
||||
adm:*::
|
||||
tty:*::
|
||||
disk:*::
|
||||
lp:*::
|
||||
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:x::
|
||||
fooo:x::
|
@@ -0,0 +1,33 @@
|
||||
#
|
||||
# /etc/pam.d/common-password - password-related modules common to all services
|
||||
#
|
||||
# This file is included from other service-specific PAM config files,
|
||||
# and should contain a list of modules that define the services to be
|
||||
# used to change user passwords. The default is pam_unix.
|
||||
|
||||
# Explanation of pam_unix options:
|
||||
#
|
||||
# The "md5" option enables MD5 passwords. Without this option, the
|
||||
# default is Unix crypt.
|
||||
#
|
||||
# The "obscure" option replaces the old `OBSCURE_CHECKS_ENAB' option in
|
||||
# login.defs.
|
||||
#
|
||||
# See the pam_unix manpage for other options.
|
||||
|
||||
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
|
||||
# To take advantage of this, it is recommended that you configure any
|
||||
# local modules either before or after the default block, and use
|
||||
# pam-auth-update to manage selection of other modules. See
|
||||
# pam-auth-update(8) for details.
|
||||
|
||||
# here are the per-package modules (the "Primary" block)
|
||||
password [success=1 default=ignore] pam_unix.so obscure
|
||||
# here's the fallback if no module succeeds
|
||||
password requisite pam_deny.so
|
||||
# prime the stack with a positive return value if there isn't one already;
|
||||
# this avoids us returning an error just because nothing sets a success code
|
||||
# since the modules above will each just jump around
|
||||
password required pam_permit.so
|
||||
# and here are more per-package modules (the "Additional" block)
|
||||
# end of pam-auth-update config
|
@@ -0,0 +1,6 @@
|
||||
#
|
||||
# The PAM configuration file for the Shadow `chpasswd' service
|
||||
#
|
||||
|
||||
@include common-password
|
||||
|
21
tests/newusers/49_multiple_system_users/config/etc/passwd
Normal file
21
tests/newusers/49_multiple_system_users/config/etc/passwd
Normal file
@@ -0,0 +1,21 @@
|
||||
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:998:998::/var/spool/exim4:/bin/false
|
||||
foo:x:65535:65535:User Foo - Gecos Field::/bin/sh
|
||||
fooo:x:997:997:User Foo - Gecos Field::/bin/sh
|
21
tests/newusers/49_multiple_system_users/config/etc/shadow
Normal file
21
tests/newusers/49_multiple_system_users/config/etc/shadow
Normal file
@@ -0,0 +1,21 @@
|
||||
root::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:eKzSSVkXDoVUM:13906:0:99999:7:::
|
||||
fooo:eKzSSVkXDoVUM:13906:0:99999:7:::
|
59
tests/newusers/49_multiple_system_users/data/group
Normal file
59
tests/newusers/49_multiple_system_users/data/group
Normal file
@@ -0,0 +1,59 @@
|
||||
root:x:0:
|
||||
daemon:x:1:
|
||||
bin:x:2:
|
||||
sys:x:3:
|
||||
adm:x:4:
|
||||
tty:x:5:
|
||||
disk:x:6:
|
||||
lp:x:7:
|
||||
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:65535:foo
|
||||
fooo:x:997:
|
||||
foo1:x:996:
|
||||
foo1a:x:999:
|
||||
foo2:x:2000:
|
||||
foo3:x:994:
|
||||
foo4:x:998:
|
||||
foo5:x:3005:
|
||||
foo6:x:992:
|
||||
foo7:x:61000:
|
||||
foo8:x:991:
|
||||
foo9:x:995:
|
||||
foo10:x:990:
|
||||
foo11:x:63000:
|
||||
foo12:x:988:
|
||||
foo13:x:987:
|
||||
foo14:x:993:
|
||||
foo15:x:986:
|
59
tests/newusers/49_multiple_system_users/data/gshadow
Normal file
59
tests/newusers/49_multiple_system_users/data/gshadow
Normal file
@@ -0,0 +1,59 @@
|
||||
root:*::
|
||||
daemon:*::
|
||||
bin:*::
|
||||
sys:*::
|
||||
adm:*::
|
||||
tty:*::
|
||||
disk:*::
|
||||
lp:*::
|
||||
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:x::
|
||||
fooo:x::
|
||||
foo1:*::
|
||||
foo1a:*::
|
||||
foo2:*::
|
||||
foo3:*::
|
||||
foo4:*::
|
||||
foo5:*::
|
||||
foo6:*::
|
||||
foo7:*::
|
||||
foo8:*::
|
||||
foo9:*::
|
||||
foo10:*::
|
||||
foo11:*::
|
||||
foo12:*::
|
||||
foo13:*::
|
||||
foo14:*::
|
||||
foo15:*::
|
17
tests/newusers/49_multiple_system_users/data/newusers.list
Normal file
17
tests/newusers/49_multiple_system_users/data/newusers.list
Normal file
@@ -0,0 +1,17 @@
|
||||
foo1:foo1Pass:::User Foo - Gecos Field::/bin/sh
|
||||
foo1a:foo1aPas:foo1::User Foo - Gecos Field::/bin/sh
|
||||
foo1b:foo1bPas::foo1a:User Foo - Gecos Field::/bin/sh
|
||||
foo2:foo2Pass:2000:2000:User Foo - Gecos Field::/bin/sh
|
||||
foo3:foo3Pass:::User Foo - Gecos Field::/bin/sh
|
||||
foo4:foo4Pass:3000::User Foo - Gecos Field::/bin/sh
|
||||
foo5:foo5Pass::3005:User Foo - Gecos Field::/bin/sh
|
||||
foo6:foo6Pass:::User Foo - Gecos Field::/bin/sh
|
||||
foo7:foo7Pass:61000:61000:User Foo - Gecos Field::/bin/sh
|
||||
foo8:foo8Pass:::User Foo - Gecos Field::/bin/sh
|
||||
foo9:foo9Pass:62000::User Foo - Gecos Field::/bin/sh
|
||||
foo10:foo10Pas:::User Foo - Gecos Field::/bin/sh
|
||||
foo11:foo11Pas::63000:User Foo - Gecos Field::/bin/sh
|
||||
foo12:foo12Pas:::User Foo - Gecos Field::/bin/sh
|
||||
foo13:foo13Pas:::User Foo - Gecos Field::/bin/sh
|
||||
foo14:foo14Pas:59000::User Foo - Gecos Field::/bin/sh
|
||||
foo15:foo15Pas:::User Foo - Gecos Field::/bin/sh
|
38
tests/newusers/49_multiple_system_users/data/passwd
Normal file
38
tests/newusers/49_multiple_system_users/data/passwd
Normal file
@@ -0,0 +1,38 @@
|
||||
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:998:998::/var/spool/exim4:/bin/false
|
||||
foo:x:65535:65535:User Foo - Gecos Field::/bin/sh
|
||||
fooo:x:997:997:User Foo - Gecos Field::/bin/sh
|
||||
foo1:x:996:996:User Foo - Gecos Field::/bin/sh
|
||||
foo1a:x:996:999:User Foo - Gecos Field::/bin/sh
|
||||
foo1b:x:995:999:User Foo - Gecos Field::/bin/sh
|
||||
foo2:x:2000:2000:User Foo - Gecos Field::/bin/sh
|
||||
foo3:x:994:994:User Foo - Gecos Field::/bin/sh
|
||||
foo4:x:3000:998:User Foo - Gecos Field::/bin/sh
|
||||
foo5:x:993:3005:User Foo - Gecos Field::/bin/sh
|
||||
foo6:x:992:992:User Foo - Gecos Field::/bin/sh
|
||||
foo7:x:61000:61000:User Foo - Gecos Field::/bin/sh
|
||||
foo8:x:991:991:User Foo - Gecos Field::/bin/sh
|
||||
foo9:x:62000:995:User Foo - Gecos Field::/bin/sh
|
||||
foo10:x:990:990:User Foo - Gecos Field::/bin/sh
|
||||
foo11:x:989:63000:User Foo - Gecos Field::/bin/sh
|
||||
foo12:x:988:988:User Foo - Gecos Field::/bin/sh
|
||||
foo13:x:987:987:User Foo - Gecos Field::/bin/sh
|
||||
foo14:x:59000:993:User Foo - Gecos Field::/bin/sh
|
||||
foo15:x:986:986:User Foo - Gecos Field::/bin/sh
|
38
tests/newusers/49_multiple_system_users/data/shadow
Normal file
38
tests/newusers/49_multiple_system_users/data/shadow
Normal file
@@ -0,0 +1,38 @@
|
||||
root::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:eKzSSVkXDoVUM:13906:0:99999:7:::
|
||||
fooo:eKzSSVkXDoVUM:13906:0:99999:7:::
|
||||
foo1:@PASS_DES foo1Pass@:@TODAY@:0:99999:7:::
|
||||
foo1a:@PASS_DES foo1aPas@:@TODAY@:0:99999:7:::
|
||||
foo1b:@PASS_DES foo1bPas@:@TODAY@:0:99999:7:::
|
||||
foo2:@PASS_DES foo2Pass@:@TODAY@:0:99999:7:::
|
||||
foo3:@PASS_DES foo3Pass@:@TODAY@:0:99999:7:::
|
||||
foo4:@PASS_DES foo4Pass@:@TODAY@:0:99999:7:::
|
||||
foo5:@PASS_DES foo5Pass@:@TODAY@:0:99999:7:::
|
||||
foo6:@PASS_DES foo6Pass@:@TODAY@:0:99999:7:::
|
||||
foo7:@PASS_DES foo7Pass@:@TODAY@:0:99999:7:::
|
||||
foo8:@PASS_DES foo8Pass@:@TODAY@:0:99999:7:::
|
||||
foo9:@PASS_DES foo9Pass@:@TODAY@:0:99999:7:::
|
||||
foo10:@PASS_DES foo10Pas@:@TODAY@:0:99999:7:::
|
||||
foo11:@PASS_DES foo11Pas@:@TODAY@:0:99999:7:::
|
||||
foo12:@PASS_DES foo12Pas@:@TODAY@:0:99999:7:::
|
||||
foo13:@PASS_DES foo13Pas@:@TODAY@:0:99999:7:::
|
||||
foo14:@PASS_DES foo14Pas@:@TODAY@:0:99999:7:::
|
||||
foo15:@PASS_DES foo15Pas@:@TODAY@:0:99999:7:::
|
37
tests/newusers/49_multiple_system_users/newusers.test
Executable file
37
tests/newusers/49_multiple_system_users/newusers.test
Executable file
@@ -0,0 +1,37 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
cd $(dirname $0)
|
||||
|
||||
. ../../common/config.sh
|
||||
. ../../common/log.sh
|
||||
|
||||
log_start "$0" "newusers can add multiple system users"
|
||||
|
||||
save_config
|
||||
|
||||
# restore the files on exit
|
||||
trap 'log_status "$0" "FAILURE"; restore_config' 0
|
||||
|
||||
change_config
|
||||
|
||||
newusers --system data/newusers.list
|
||||
|
||||
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 data/group /etc/group
|
||||
echo "OK"
|
||||
echo -n "Check the shadow file..."
|
||||
../../common/compare_file.pl data/shadow /etc/shadow
|
||||
echo "OK"
|
||||
echo -n "Check the gshadow file..."
|
||||
../../common/compare_file.pl data/gshadow /etc/gshadow
|
||||
echo "OK"
|
||||
|
||||
log_status "$0" "SUCCESS"
|
||||
restore_config
|
||||
trap '' 0
|
||||
|
Reference in New Issue
Block a user