From d6495cab070908aa23f70c1ac084918a5e7a6499 Mon Sep 17 00:00:00 2001 From: nekral-guest Date: Sat, 9 May 2009 22:27:13 +0000 Subject: [PATCH] There is no need to use expect for these tests. Only check the stdout/stderr output. --- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 14 ------------- .../passwd.test | 13 +++++++++++- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 14 ------------- .../passwd.test | 13 +++++++++++- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 14 ------------- .../passwd.test | 13 +++++++++++- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 14 ------------- .../passwd.test | 13 +++++++++++- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 14 ------------- .../passwd.test | 13 +++++++++++- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../06_passwd_-l_root_lock_account/passwd.exp | 17 --------------- .../passwd.test | 15 +++++++++++-- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 17 --------------- .../passwd.test | 15 +++++++++++-- .../config/etc/group | 2 +- .../data/passwd.out | 1 + .../passwd.exp | 17 --------------- .../passwd.test | 15 +++++++++++-- .../config/etc/group | 2 +- .../data/passwd.err | 2 ++ .../passwd.exp | 19 ----------------- .../passwd.test | 21 +++++++++++++++++-- .../passwd/10_passwd_-d_root/config/etc/group | 2 +- .../passwd/10_passwd_-d_root/data/passwd.out | 1 + tests/passwd/10_passwd_-d_root/passwd.exp | 17 --------------- tests/passwd/10_passwd_-d_root/passwd.test | 15 +++++++++++-- .../11_passwd_--mindays_root/config/etc/group | 2 +- .../11_passwd_--mindays_root/data/passwd.out | 1 + .../11_passwd_--mindays_root/passwd.exp | 17 --------------- .../11_passwd_--mindays_root/passwd.test | 15 +++++++++++-- .../12_passwd_--maxdays_root/config/etc/group | 2 +- .../12_passwd_--maxdays_root/data/passwd.out | 1 + .../12_passwd_--maxdays_root/passwd.exp | 17 --------------- .../12_passwd_--maxdays_root/passwd.test | 15 +++++++++++-- .../config/etc/group | 2 +- .../13_passwd_--warndays_root/data/passwd.out | 1 + .../13_passwd_--warndays_root/passwd.exp | 17 --------------- .../13_passwd_--warndays_root/passwd.test | 15 +++++++++++-- .../config/etc/group | 2 +- .../14_passwd_--inactive_root/data/passwd.out | 1 + .../14_passwd_--inactive_root/passwd.exp | 17 --------------- .../14_passwd_--inactive_root/passwd.test | 15 +++++++++++-- .../15_passwd_--expire_root/config/etc/group | 2 +- .../15_passwd_--expire_root/data/passwd.out | 1 + .../passwd/15_passwd_--expire_root/passwd.exp | 17 --------------- .../15_passwd_--expire_root/passwd.test | 15 +++++++++++-- .../16_passwd_-S-a_root/config/etc/group | 2 +- tests/passwd/16_passwd_-S-a_root/passwd.test | 4 ++-- 62 files changed, 230 insertions(+), 285 deletions(-) create mode 100644 tests/passwd/01_passwd_-S_root_locked_account/data/passwd.out delete mode 100755 tests/passwd/01_passwd_-S_root_locked_account/passwd.exp create mode 100644 tests/passwd/02_passwd_-S_root_valid_account/data/passwd.out delete mode 100755 tests/passwd/02_passwd_-S_root_valid_account/passwd.exp create mode 100644 tests/passwd/03_passwd_-S_root_empty_password/data/passwd.out delete mode 100755 tests/passwd/03_passwd_-S_root_empty_password/passwd.exp create mode 100644 tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/data/passwd.out delete mode 100755 tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.exp create mode 100644 tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/data/passwd.out delete mode 100755 tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.exp create mode 100644 tests/passwd/06_passwd_-l_root_lock_account/data/passwd.out delete mode 100755 tests/passwd/06_passwd_-l_root_lock_account/passwd.exp create mode 100644 tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/data/passwd.out delete mode 100755 tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.exp create mode 100644 tests/passwd/08_passwd_-u_root_unlock_account/data/passwd.out delete mode 100755 tests/passwd/08_passwd_-u_root_unlock_account/passwd.exp create mode 100644 tests/passwd/09_passwd_-u_root_unlock_to_empty/data/passwd.err delete mode 100755 tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.exp create mode 100644 tests/passwd/10_passwd_-d_root/data/passwd.out delete mode 100755 tests/passwd/10_passwd_-d_root/passwd.exp create mode 100644 tests/passwd/11_passwd_--mindays_root/data/passwd.out delete mode 100755 tests/passwd/11_passwd_--mindays_root/passwd.exp create mode 100644 tests/passwd/12_passwd_--maxdays_root/data/passwd.out delete mode 100755 tests/passwd/12_passwd_--maxdays_root/passwd.exp create mode 100644 tests/passwd/13_passwd_--warndays_root/data/passwd.out delete mode 100755 tests/passwd/13_passwd_--warndays_root/passwd.exp create mode 100644 tests/passwd/14_passwd_--inactive_root/data/passwd.out delete mode 100755 tests/passwd/14_passwd_--inactive_root/passwd.exp create mode 100644 tests/passwd/15_passwd_--expire_root/data/passwd.out delete mode 100755 tests/passwd/15_passwd_--expire_root/passwd.exp diff --git a/tests/passwd/01_passwd_-S_root_locked_account/config/etc/group b/tests/passwd/01_passwd_-S_root_locked_account/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/01_passwd_-S_root_locked_account/config/etc/group +++ b/tests/passwd/01_passwd_-S_root_locked_account/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/01_passwd_-S_root_locked_account/data/passwd.out b/tests/passwd/01_passwd_-S_root_locked_account/data/passwd.out new file mode 100644 index 00000000..86a73e16 --- /dev/null +++ b/tests/passwd/01_passwd_-S_root_locked_account/data/passwd.out @@ -0,0 +1 @@ +foo L 07/14/2005 0 99999 7 -1 diff --git a/tests/passwd/01_passwd_-S_root_locked_account/passwd.exp b/tests/passwd/01_passwd_-S_root_locked_account/passwd.exp deleted file mode 100755 index 06647267..00000000 --- a/tests/passwd/01_passwd_-S_root_locked_account/passwd.exp +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -S foo\r" -expect "foo L 07/14/2005 0 99999 7 -1" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/01_passwd_-S_root_locked_account/passwd.test b/tests/passwd/01_passwd_-S_root_locked_account/passwd.test index b6ea2ff2..06416389 100755 --- a/tests/passwd/01_passwd_-S_root_locked_account/passwd.test +++ b/tests/passwd/01_passwd_-S_root_locked_account/passwd.test @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Request password information for user foo (passwd -S foo)..." +passwd -S foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/02_passwd_-S_root_valid_account/config/etc/group b/tests/passwd/02_passwd_-S_root_valid_account/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/02_passwd_-S_root_valid_account/config/etc/group +++ b/tests/passwd/02_passwd_-S_root_valid_account/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/02_passwd_-S_root_valid_account/data/passwd.out b/tests/passwd/02_passwd_-S_root_valid_account/data/passwd.out new file mode 100644 index 00000000..55af5a73 --- /dev/null +++ b/tests/passwd/02_passwd_-S_root_valid_account/data/passwd.out @@ -0,0 +1 @@ +foo P 07/13/2005 0 99999 7 -1 diff --git a/tests/passwd/02_passwd_-S_root_valid_account/passwd.exp b/tests/passwd/02_passwd_-S_root_valid_account/passwd.exp deleted file mode 100755 index 1a891c2d..00000000 --- a/tests/passwd/02_passwd_-S_root_valid_account/passwd.exp +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -S foo\r" -expect "foo P 07/13/2005 0 99999 7 -1" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/02_passwd_-S_root_valid_account/passwd.test b/tests/passwd/02_passwd_-S_root_valid_account/passwd.test index b6ea2ff2..06416389 100755 --- a/tests/passwd/02_passwd_-S_root_valid_account/passwd.test +++ b/tests/passwd/02_passwd_-S_root_valid_account/passwd.test @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Request password information for user foo (passwd -S foo)..." +passwd -S foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/03_passwd_-S_root_empty_password/config/etc/group b/tests/passwd/03_passwd_-S_root_empty_password/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/03_passwd_-S_root_empty_password/config/etc/group +++ b/tests/passwd/03_passwd_-S_root_empty_password/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/03_passwd_-S_root_empty_password/data/passwd.out b/tests/passwd/03_passwd_-S_root_empty_password/data/passwd.out new file mode 100644 index 00000000..c64fb612 --- /dev/null +++ b/tests/passwd/03_passwd_-S_root_empty_password/data/passwd.out @@ -0,0 +1 @@ +foo NP 07/24/2005 0 99998 8 -1 diff --git a/tests/passwd/03_passwd_-S_root_empty_password/passwd.exp b/tests/passwd/03_passwd_-S_root_empty_password/passwd.exp deleted file mode 100755 index 9701f116..00000000 --- a/tests/passwd/03_passwd_-S_root_empty_password/passwd.exp +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -S foo\r" -expect "foo NP 07/24/2005 0 99998 8 -1" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/03_passwd_-S_root_empty_password/passwd.test b/tests/passwd/03_passwd_-S_root_empty_password/passwd.test index b6ea2ff2..06416389 100755 --- a/tests/passwd/03_passwd_-S_root_empty_password/passwd.test +++ b/tests/passwd/03_passwd_-S_root_empty_password/passwd.test @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Request password information for user foo (passwd -S foo)..." +passwd -S foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/config/etc/group b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/config/etc/group +++ b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/data/passwd.out b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/data/passwd.out new file mode 100644 index 00000000..e86159df --- /dev/null +++ b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/data/passwd.out @@ -0,0 +1 @@ +foo P diff --git a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.exp b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.exp deleted file mode 100755 index 7dbf3ce7..00000000 --- a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.exp +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -S foo\r" -expect "foo P" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.test b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.test index 297397eb..e084d344 100755 --- a/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.test +++ b/tests/passwd/04_passwd_-S_root_valid_account_no_shadow_file/passwd.test @@ -20,7 +20,18 @@ echo -n "Remove /etc/shadow..." rm -f /etc/shadow echo "OK" -./passwd.exp +echo -n "Request password information for user foo (passwd -S foo)..." +passwd -S foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/config/etc/group b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/config/etc/group +++ b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/data/passwd.out b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/data/passwd.out new file mode 100644 index 00000000..9ba8956a --- /dev/null +++ b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/data/passwd.out @@ -0,0 +1 @@ +foo L diff --git a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.exp b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.exp deleted file mode 100755 index 90a12e18..00000000 --- a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.exp +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -S foo\r" -expect "foo L" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.test b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.test index b6ea2ff2..06416389 100755 --- a/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.test +++ b/tests/passwd/05_passwd_-S_root_valid_account_no_shadow_entry/passwd.test @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Request password information for user foo (passwd -S foo)..." +passwd -S foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/06_passwd_-l_root_lock_account/config/etc/group b/tests/passwd/06_passwd_-l_root_lock_account/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/06_passwd_-l_root_lock_account/config/etc/group +++ b/tests/passwd/06_passwd_-l_root_lock_account/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/06_passwd_-l_root_lock_account/data/passwd.out b/tests/passwd/06_passwd_-l_root_lock_account/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/06_passwd_-l_root_lock_account/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/06_passwd_-l_root_lock_account/passwd.exp b/tests/passwd/06_passwd_-l_root_lock_account/passwd.exp deleted file mode 100755 index 05a119cf..00000000 --- a/tests/passwd/06_passwd_-l_root_lock_account/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -l foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/06_passwd_-l_root_lock_account/passwd.test b/tests/passwd/06_passwd_-l_root_lock_account/passwd.test index d035d206..3fabb129 100755 --- a/tests/passwd/06_passwd_-l_root_lock_account/passwd.test +++ b/tests/passwd/06_passwd_-l_root_lock_account/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can lock a password with passwd -l" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Lock foo's password (passwd -l foo)..." +passwd -l foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/config/etc/group b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/config/etc/group +++ b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/data/passwd.out b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.exp b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.exp deleted file mode 100755 index 05a119cf..00000000 --- a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -l foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.test b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.test index 1e24a355..099c3807 100755 --- a/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.test +++ b/tests/passwd/07_passwd_-l_root_lock_account_no_shadow_entry/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "passwd can lock a password in /etc/passwd" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Lock foo's password (passwd -l foo)..." +passwd -l foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl data/passwd /etc/passwd diff --git a/tests/passwd/08_passwd_-u_root_unlock_account/config/etc/group b/tests/passwd/08_passwd_-u_root_unlock_account/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/08_passwd_-u_root_unlock_account/config/etc/group +++ b/tests/passwd/08_passwd_-u_root_unlock_account/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/08_passwd_-u_root_unlock_account/data/passwd.out b/tests/passwd/08_passwd_-u_root_unlock_account/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/08_passwd_-u_root_unlock_account/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/08_passwd_-u_root_unlock_account/passwd.exp b/tests/passwd/08_passwd_-u_root_unlock_account/passwd.exp deleted file mode 100755 index d62fe30e..00000000 --- a/tests/passwd/08_passwd_-u_root_unlock_account/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -u foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/08_passwd_-u_root_unlock_account/passwd.test b/tests/passwd/08_passwd_-u_root_unlock_account/passwd.test index d035d206..b5ac0d85 100755 --- a/tests/passwd/08_passwd_-u_root_unlock_account/passwd.test +++ b/tests/passwd/08_passwd_-u_root_unlock_account/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can unlock a password with passwd -u" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "unlock foo's password (passwd -u foo)..." +passwd -u foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/09_passwd_-u_root_unlock_to_empty/config/etc/group b/tests/passwd/09_passwd_-u_root_unlock_to_empty/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/09_passwd_-u_root_unlock_to_empty/config/etc/group +++ b/tests/passwd/09_passwd_-u_root_unlock_to_empty/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/09_passwd_-u_root_unlock_to_empty/data/passwd.err b/tests/passwd/09_passwd_-u_root_unlock_to_empty/data/passwd.err new file mode 100644 index 00000000..2987d41f --- /dev/null +++ b/tests/passwd/09_passwd_-u_root_unlock_to_empty/data/passwd.err @@ -0,0 +1,2 @@ +passwd: unlocking the password would result in a passwordless account. +You should set a password with usermod -p to unlock the password of this account. diff --git a/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.exp b/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.exp deleted file mode 100755 index 95ab6085..00000000 --- a/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.exp +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -u foo\r" -expect "passwd: unlocking the password would result in a passwordless account." -expect "You should set a password with usermod -p to unlock the password of this account." -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.test b/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.test index b6ea2ff2..a61e23df 100755 --- a/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.test +++ b/tests/passwd/09_passwd_-u_root_unlock_to_empty/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "passwd -u cannot create a passwordless account" save_config @@ -16,7 +16,24 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Unlock foo's pasword (passwd -u foo)..." +passwd -u foo 2> tmp/passwd.err && exit 1 || { + status=$? +} +echo "OK" + +echo -n "Check returned status ($status)..." +test "$status" = "3" +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.err +echo "=======================================================================" +echo -n "Check the error message..." +diff -au data/passwd.err tmp/passwd.err +echo "error message OK." +rm -f tmp/passwd.err echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/10_passwd_-d_root/config/etc/group b/tests/passwd/10_passwd_-d_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/10_passwd_-d_root/config/etc/group +++ b/tests/passwd/10_passwd_-d_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/10_passwd_-d_root/data/passwd.out b/tests/passwd/10_passwd_-d_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/10_passwd_-d_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/10_passwd_-d_root/passwd.exp b/tests/passwd/10_passwd_-d_root/passwd.exp deleted file mode 100755 index 60a83d12..00000000 --- a/tests/passwd/10_passwd_-d_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd -d foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/10_passwd_-d_root/passwd.test b/tests/passwd/10_passwd_-d_root/passwd.test index d035d206..e1ac5f25 100755 --- a/tests/passwd/10_passwd_-d_root/passwd.test +++ b/tests/passwd/10_passwd_-d_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can delete a password with passwd -d" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Delete foo's password (passwd -d foo)..." +passwd -d foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/11_passwd_--mindays_root/config/etc/group b/tests/passwd/11_passwd_--mindays_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/11_passwd_--mindays_root/config/etc/group +++ b/tests/passwd/11_passwd_--mindays_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/11_passwd_--mindays_root/data/passwd.out b/tests/passwd/11_passwd_--mindays_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/11_passwd_--mindays_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/11_passwd_--mindays_root/passwd.exp b/tests/passwd/11_passwd_--mindays_root/passwd.exp deleted file mode 100755 index d9f5a243..00000000 --- a/tests/passwd/11_passwd_--mindays_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd --mindays 10 foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/11_passwd_--mindays_root/passwd.test b/tests/passwd/11_passwd_--mindays_root/passwd.test index d035d206..409396f6 100755 --- a/tests/passwd/11_passwd_--mindays_root/passwd.test +++ b/tests/passwd/11_passwd_--mindays_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can use passwd --mindays" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Change the min number of days for foo's password (passwd --mindays 10 foo)..." +passwd --mindays 10 foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/12_passwd_--maxdays_root/config/etc/group b/tests/passwd/12_passwd_--maxdays_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/12_passwd_--maxdays_root/config/etc/group +++ b/tests/passwd/12_passwd_--maxdays_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/12_passwd_--maxdays_root/data/passwd.out b/tests/passwd/12_passwd_--maxdays_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/12_passwd_--maxdays_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/12_passwd_--maxdays_root/passwd.exp b/tests/passwd/12_passwd_--maxdays_root/passwd.exp deleted file mode 100755 index 555f346f..00000000 --- a/tests/passwd/12_passwd_--maxdays_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd --maxdays 10 foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/12_passwd_--maxdays_root/passwd.test b/tests/passwd/12_passwd_--maxdays_root/passwd.test index d035d206..a895e3ec 100755 --- a/tests/passwd/12_passwd_--maxdays_root/passwd.test +++ b/tests/passwd/12_passwd_--maxdays_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can use passwd --maxdays" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Change the max number of days for foo's password (passwd --maxdays 10 foo)..." +passwd --maxdays 10 foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/13_passwd_--warndays_root/config/etc/group b/tests/passwd/13_passwd_--warndays_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/13_passwd_--warndays_root/config/etc/group +++ b/tests/passwd/13_passwd_--warndays_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/13_passwd_--warndays_root/data/passwd.out b/tests/passwd/13_passwd_--warndays_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/13_passwd_--warndays_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/13_passwd_--warndays_root/passwd.exp b/tests/passwd/13_passwd_--warndays_root/passwd.exp deleted file mode 100755 index 5c7812e0..00000000 --- a/tests/passwd/13_passwd_--warndays_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd --warndays 10 foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/13_passwd_--warndays_root/passwd.test b/tests/passwd/13_passwd_--warndays_root/passwd.test index d035d206..18a8b87f 100755 --- a/tests/passwd/13_passwd_--warndays_root/passwd.test +++ b/tests/passwd/13_passwd_--warndays_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can use passwd --warndays" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Change the number of warning days for foo's password (passwd --warndays 10 foo)..." +passwd --warndays 10 foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/14_passwd_--inactive_root/config/etc/group b/tests/passwd/14_passwd_--inactive_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/14_passwd_--inactive_root/config/etc/group +++ b/tests/passwd/14_passwd_--inactive_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/14_passwd_--inactive_root/data/passwd.out b/tests/passwd/14_passwd_--inactive_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/14_passwd_--inactive_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/14_passwd_--inactive_root/passwd.exp b/tests/passwd/14_passwd_--inactive_root/passwd.exp deleted file mode 100755 index 1b3d489e..00000000 --- a/tests/passwd/14_passwd_--inactive_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd --inactive 10 foo\r" -expect "Password changed." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/14_passwd_--inactive_root/passwd.test b/tests/passwd/14_passwd_--inactive_root/passwd.test index d035d206..52dbab07 100755 --- a/tests/passwd/14_passwd_--inactive_root/passwd.test +++ b/tests/passwd/14_passwd_--inactive_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can use passwd --inactive" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Change the number of inactive days for foo's password (passwd --inactive 10 foo)..." +passwd --inactive 10 foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/15_passwd_--expire_root/config/etc/group b/tests/passwd/15_passwd_--expire_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/15_passwd_--expire_root/config/etc/group +++ b/tests/passwd/15_passwd_--expire_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/15_passwd_--expire_root/data/passwd.out b/tests/passwd/15_passwd_--expire_root/data/passwd.out new file mode 100644 index 00000000..e83932d4 --- /dev/null +++ b/tests/passwd/15_passwd_--expire_root/data/passwd.out @@ -0,0 +1 @@ +passwd: password expiry information changed. \ No newline at end of file diff --git a/tests/passwd/15_passwd_--expire_root/passwd.exp b/tests/passwd/15_passwd_--expire_root/passwd.exp deleted file mode 100755 index c29bc0c6..00000000 --- a/tests/passwd/15_passwd_--expire_root/passwd.exp +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/expect - -set timeout 2 -expect_after default {puts "\nFAIL"; exit 1} - -spawn /bin/sh -expect "# " - -send "passwd --expire foo\r" -expect "Password set to expire." -expect "# " -send "echo \$?\r" -expect "0" -expect "# " -send "exit\r" -puts "OK\n" -exit 0 diff --git a/tests/passwd/15_passwd_--expire_root/passwd.test b/tests/passwd/15_passwd_--expire_root/passwd.test index d035d206..f2ab71d7 100755 --- a/tests/passwd/15_passwd_--expire_root/passwd.test +++ b/tests/passwd/15_passwd_--expire_root/passwd.test @@ -7,7 +7,7 @@ cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh -log_start "$0" "passwd can report the status of an account to root" +log_start "$0" "root can use passwd --expire" save_config @@ -16,7 +16,18 @@ trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config -./passwd.exp +echo -n "Set foo's password as expired (passwd --expire foo)..." +passwd --expire foo > tmp/passwd.out +echo "OK" + +echo "passwd reported:" +echo "=======================================================================" +cat tmp/passwd.out +echo "=======================================================================" +echo -n "Check the message..." +diff -au data/passwd.out tmp/passwd.out +echo "message OK." +rm -f tmp/passwd.out echo -n "Check the passwd file..." ../../common/compare_file.pl config/etc/passwd /etc/passwd diff --git a/tests/passwd/16_passwd_-S-a_root/config/etc/group b/tests/passwd/16_passwd_-S-a_root/config/etc/group index d1e687c3..fecba0c4 100644 --- a/tests/passwd/16_passwd_-S-a_root/config/etc/group +++ b/tests/passwd/16_passwd_-S-a_root/config/etc/group @@ -39,4 +39,4 @@ users:x:100: nogroup:x:65534: crontab:x:101: Debian-exim:x:102: -foo:x +foo:x:1000: diff --git a/tests/passwd/16_passwd_-S-a_root/passwd.test b/tests/passwd/16_passwd_-S-a_root/passwd.test index c54b99c3..1b64c537 100755 --- a/tests/passwd/16_passwd_-S-a_root/passwd.test +++ b/tests/passwd/16_passwd_-S-a_root/passwd.test @@ -23,9 +23,9 @@ echo "passwd reported:" echo "=======================================================================" cat tmp/passwd.out echo "=======================================================================" -echo -n "Check that there were a failure message..." +echo -n "Check the message..." diff -au data/passwd.out tmp/passwd.out -echo "error message OK." +echo "message OK." rm -f tmp/passwd.out echo -n "Check the passwd file..."