Annotation of embedaddon/php/ext/standard/tests/array/array_map_error.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test array_map() function : error conditions
! 3: --FILE--
! 4: <?php
! 5: /* Prototype : array array_map ( callback $callback , array $arr1 [, array $... ] )
! 6: * Description: Applies the callback to the elements of the given arrays
! 7: * Source code: ext/standard/array.c
! 8: */
! 9:
! 10: echo "*** Testing array_map() : error conditions ***\n";
! 11:
! 12: // Zero arguments
! 13: echo "\n-- Testing array_map() function with Zero arguments --\n";
! 14: var_dump( array_map() );
! 15:
! 16: // Testing array_map with one less than the expected number of arguments
! 17: echo "\n-- Testing array_map() function with one less than expected no. of arguments --\n";
! 18: function callback1() {
! 19: return 1;
! 20: }
! 21: var_dump( array_map('callback1') );
! 22:
! 23: echo "\n-- Testing array_map() function with less no. of arrays than callback function arguments --\n";
! 24: $arr1 = array(1, 2);
! 25: function callback2($p, $q) {
! 26: return $p * $q;
! 27: }
! 28: var_dump( array_map('callback2', $arr1) );
! 29:
! 30: echo "\n-- Testing array_map() function with more no. of arrays than callback function arguments --\n";
! 31: $arr2 = array(3, 4);
! 32: $arr3 = array(5, 6);
! 33: var_dump( array_map('callback2', $arr1, $arr2, $arr3) );
! 34:
! 35: echo "Done";
! 36: ?>
! 37: --EXPECTF--
! 38: *** Testing array_map() : error conditions ***
! 39:
! 40: -- Testing array_map() function with Zero arguments --
! 41:
! 42: Warning: array_map() expects at least 2 parameters, 0 given in %s on line %d%d
! 43: NULL
! 44:
! 45: -- Testing array_map() function with one less than expected no. of arguments --
! 46:
! 47: Warning: array_map() expects at least 2 parameters, 1 given in %s on line %d%d
! 48: NULL
! 49:
! 50: -- Testing array_map() function with less no. of arrays than callback function arguments --
! 51:
! 52: Warning: Missing argument 2 for callback2() in %s on line %d%d
! 53:
! 54: Notice: Undefined variable: q in %s on line %d%d
! 55:
! 56: Warning: Missing argument 2 for callback2() in %s on line %d%d
! 57:
! 58: Notice: Undefined variable: q in %s on line %d%d
! 59: array(2) {
! 60: [0]=>
! 61: int(0)
! 62: [1]=>
! 63: int(0)
! 64: }
! 65:
! 66: -- Testing array_map() function with more no. of arrays than callback function arguments --
! 67: array(2) {
! 68: [0]=>
! 69: int(3)
! 70: [1]=>
! 71: int(8)
! 72: }
! 73: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>