pw_usermod_test.sh revision 275657
1275657Sbrd# $FreeBSD: head/usr.sbin/pw/tests/pw_usermod.sh 275657 2014-12-09 22:11:56Z brd $ 2275657Sbrd 3275657Sbrd# Import helper functions 4275657Sbrd. $(atf_get_srcdir)/helper_functions.shin 5275657Sbrd 6275657Sbrd# Test modifying a user 7275657Sbrdatf_test_case user_mod 8275657Sbrduser_mod_body() { 9275657Sbrd populate_etc_skel 10275657Sbrd 11275657Sbrd atf_check -s exit:67 -e match:"no such user" ${PW} usermod test 12275657Sbrd atf_check -s exit:0 ${PW} useradd test 13275657Sbrd atf_check -s exit:0 ${PW} usermod test 14275657Sbrd atf_check -s exit:0 -o match:"^test:.*" \ 15275657Sbrd grep "^test:.*" $HOME/master.passwd 16275657Sbrd} 17275657Sbrd 18275657Sbrd# Test modifying a user with comments 19275657Sbrdatf_test_case user_mod_comments 20275657Sbrduser_mod_comments_body() { 21275657Sbrd populate_etc_skel 22275657Sbrd 23275657Sbrd atf_check -s exit:0 ${PW} useradd test -c "Test User,home,123,456" 24275657Sbrd atf_check -s exit:0 ${PW} usermod test -c "Test User,work,123,456" 25275657Sbrd atf_check -s exit:0 -o match:"^test:.*:Test User,work,123,456:" \ 26275657Sbrd grep "^test:.*:Test User,work,123,456:" $HOME/master.passwd 27275657Sbrd} 28275657Sbrd 29275657Sbrd# Test modifying a user with invalid comments 30275657Sbrdatf_test_case user_mod_comments_invalid 31275657Sbrduser_mod_comments_invalid_body() { 32275657Sbrd populate_etc_skel 33275657Sbrd 34275657Sbrd atf_check -s exit:0 ${PW} useradd test 35275657Sbrd atf_check -s exit:65 -e match:"invalid character" \ 36275657Sbrd ${PW} usermod test -c "Test User,work,123:456,456" 37275657Sbrd atf_check -s exit:1 -o empty \ 38275657Sbrd grep "^test:.*:Test User,work,123:456,456:" $HOME/master.passwd 39275657Sbrd} 40275657Sbrd 41275657Sbrd# Test modifying a user name with -l 42275657Sbrdatf_test_case user_mod_name 43275657Sbrduser_mod_name_body() { 44275657Sbrd populate_etc_skel 45275657Sbrd 46275657Sbrd atf_check -s exit:0 ${PW} useradd foo 47275657Sbrd atf_check -s exit:0 ${PW} usermod foo -l "bar" 48275657Sbrd atf_check -s exit:0 -o match:"^bar:.*" \ 49275657Sbrd grep "^bar:.*" $HOME/master.passwd 50275657Sbrd} 51275657Sbrdatf_init_test_cases() { 52275657Sbrd atf_add_test_case user_mod 53275657Sbrd atf_add_test_case user_mod_comments 54275657Sbrd atf_add_test_case user_mod_comments_invalid 55275657Sbrd atf_add_test_case user_mod_name 56275657Sbrd} 57