atf_test_case pwhash_blowfish_r12 pwhash_blowfish_r12_head() { atf_set "descr" "ATF test for pwhash using blowfish 12 rounds" } pwhash_blowfish_r12_body() { atf_check -s exit:0 -o match:"^\\\$2a\\\$" -x \ 'echo -n password | pwhash -b 12' } atf_test_case pwhash_md5 pwhash_md5_head() { atf_set "descr" "ATF test for pwhash using MD5" } pwhash_md5_body() { atf_check -s exit:0 -o match:"^\\\$1\\\$" -x \ 'echo -n password | pwhash -m' } atf_test_case pwhash_sha1 pwhash_sha1_head() { atf_set "descr" "ATF test for pwhash using SHA1" } pwhash_sha1_body() { atf_check -s exit:0 -o match:"^\\\$sha1\\\$" -x \ 'echo -n password | pwhash -S 24680' } atf_test_case pwhash_argon2i pwhash_argon2i_head() { atf_set "descr" "ATF test for pwhash using Argon2i" } pwhash_argon2i_body() { atf_check -s exit:0 \ -o match:"^\\\$argon2i\\\$v=19\\\$m=1024,t=1,p=1\\\$" -x \ 'echo -n password | pwhash -A argon2i,m=1024,t=1' } atf_test_case pwhash_argon2id pwhash_argon2id_head() { atf_set "descr" "ATF test for pwhash using Argon2id" } pwhash_argon2id_body() { atf_check -s exit:0 \ -o match:"^\\\$argon2id\\\$v=19\\\$m=256,t=3,p=1\\\$" -x \ 'echo -n password | pwhash -A argon2id,m=256,t=3' } atf_test_case pwhash_argon2d pwhash_argon2d_head() { atf_set "descr" "ATF test for pwhash using Argon2d" } pwhash_argon2d_body() { atf_check -s exit:0 \ -o match:"^\\\$argon2d\\\$v=19\\\$" -x \ 'echo -n password | pwhash -A argon2d' } atf_test_case pwhash_des pwhash_des_head() { atf_set "descr" "ATF test for pwhash using DES" } pwhash_des_body() { atf_check -s exit:0 -o ignore -e ignore -x \ 'echo -n password | pwhash -s somesalt' } atf_init_test_cases() { atf_add_test_case pwhash_blowfish_r12 atf_add_test_case pwhash_md5 atf_add_test_case pwhash_sha1 atf_add_test_case pwhash_argon2i atf_add_test_case pwhash_argon2id atf_add_test_case pwhash_argon2d atf_add_test_case pwhash_des }