diff options
Diffstat (limited to 'ext/hash/tests/hash_hmac_error.phpt')
| -rw-r--r-- | ext/hash/tests/hash_hmac_error.phpt | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/ext/hash/tests/hash_hmac_error.phpt b/ext/hash/tests/hash_hmac_error.phpt new file mode 100644 index 0000000..7ced431 --- /dev/null +++ b/ext/hash/tests/hash_hmac_error.phpt @@ -0,0 +1,54 @@ +--TEST-- +Test hash_hmac() function : basic functionality +--SKIPIF-- +<?php extension_loaded('hash') or die('skip: hash extension not loaded.'); ?> +--FILE-- +<?php +/* +* proto string hash_hmac ( string algo, string data, string key [, bool raw_output] ) +* Function is implemented in ext/hash/hash.c +*/ + +echo "*** Testing hash_hmac() : error conditions ***\n"; + +$data = "This is a sample string used to test the hash_hmac function with various hashing algorithms"; +$key = 'secret'; + +echo "\n-- Testing hash_hmac() function with less than expected no. of arguments --\n"; +var_dump(hash_hmac()); +var_dump(hash_hmac('crc32')); +var_dump(hash_hmac('crc32', $data)); + +echo "\n-- Testing hash_hmac() function with more than expected no. of arguments --\n"; +$extra_arg = 10; +var_dump(hash_hmac('crc32', $data, $key, TRUE, $extra_arg)); + +echo "\n-- Testing hash_hmac() function with invalid hash algorithm --\n"; +var_dump(hash_hmac('foo', $data, $key)); + +?> +===Done=== +--EXPECTF-- +*** Testing hash_hmac() : error conditions *** + +-- Testing hash_hmac() function with less than expected no. of arguments -- + +Warning: hash_hmac() expects at least 3 parameters, 0 given in %s on line %d +NULL + +Warning: hash_hmac() expects at least 3 parameters, 1 given in %s on line %d +NULL + +Warning: hash_hmac() expects at least 3 parameters, 2 given in %s on line %d +NULL + +-- Testing hash_hmac() function with more than expected no. of arguments -- + +Warning: hash_hmac() expects at most 4 parameters, 5 given in %s on line %d +NULL + +-- Testing hash_hmac() function with invalid hash algorithm -- + +Warning: hash_hmac(): Unknown hashing algorithm: foo in %s on line %d +bool(false) +===Done===
\ No newline at end of file |
