Annotation of embedaddon/php/ext/standard/tests/array/uasort_variation1.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test uasort() function : usage variations - unexpected values for 'array_arg' argument
                      3: --FILE--
                      4: <?php
                      5: /* Prototype  : bool uasort(array $array_arg, string $cmp_function)
                      6:  * Description: Sort an array with a user-defined comparison function and maintain index association 
                      7:  * Source code: ext/standard/array.c
                      8: */
                      9: 
                     10: /*
                     11: * Testing uasort() function by passing different scalar/nonscalar values as 'array_arg' argument
                     12: */
                     13: 
                     14: echo "*** Testing uasort() : unexpected values for 'array_arg' ***\n";
                     15: 
                     16: // Comparison function
                     17: /* Prototype : int cmp_function(mixed $value1, mixed $value2)
                     18:  * Parameters : $value1 and $value2 - values to be compared
                     19:  * Return value : 0 - if both values are same
                     20:  *                1 - if value1 is greater than value2
                     21:  *               -1 - if value1 is less than value2
                     22:  * Description : compares value1 and value2
                     23:  */
                     24: function cmp_function($value1, $value2)
                     25: {
                     26:   if($value1 == $value2) {
                     27:     return 0;
                     28:   }
                     29:   else if($value1 > $value2) {
                     30:     return 1;
                     31:   }
                     32:   else {
                     33:     return -1;
                     34:   }
                     35: }
                     36: 
                     37: //get an unset variable
                     38: $unset_var = 10;
                     39: unset ($unset_var);
                     40: 
                     41: // get resource variable
                     42: $fp = fopen(__FILE__,'r');
                     43: 
                     44: //array of values to iterate over
                     45: $input_values = array(
                     46: 
                     47:        // int data
                     48: /*1*/  0,
                     49:        1,
                     50:        12345,
                     51:        -2345,
                     52: 
                     53:        // float data
                     54: /*5*/  10.5,
                     55:        -10.5,
                     56:        10.1234567e8,
                     57:        10.7654321E-8,
                     58:        .5,
                     59: 
                     60:        // null data
                     61: /*10*/ NULL,
                     62:        null,
                     63:       
                     64:        // boolean data
                     65: /*12*/ true,
                     66:        false,
                     67:        TRUE,
                     68:        FALSE,
                     69: 
                     70:        // empty data
                     71: /*16*/ "",
                     72:        '',
                     73: 
                     74:        // string data
                     75: /*18*/ "string",
                     76:        'string',
                     77: 
                     78:        // resource data
                     79: /*20*/ $fp,
                     80: 
                     81:        // undefined data
                     82:        @$undefined_var,
                     83:  
                     84:        // unset data
                     85: /*22*/ @$unset_var,
                     86: );
                     87: 
                     88: // loop through each value of input_values
                     89: for($count = 0; $count < count($input_values); $count++) {
                     90:   echo "-- Iteration ".($count + 1)." --\n";
                     91:   var_dump( uasort($input_values[$count], 'cmp_function') );
                     92: };
                     93: 
                     94: //closing resource
                     95: fclose($fp);
                     96: echo "Done"
                     97: ?>
                     98: --EXPECTF--
                     99: *** Testing uasort() : unexpected values for 'array_arg' ***
                    100: -- Iteration 1 --
                    101: 
                    102: Warning: uasort() expects parameter 1 to be array, integer given in %s on line %d
                    103: NULL
                    104: -- Iteration 2 --
                    105: 
                    106: Warning: uasort() expects parameter 1 to be array, integer given in %s on line %d
                    107: NULL
                    108: -- Iteration 3 --
                    109: 
                    110: Warning: uasort() expects parameter 1 to be array, integer given in %s on line %d
                    111: NULL
                    112: -- Iteration 4 --
                    113: 
                    114: Warning: uasort() expects parameter 1 to be array, integer given in %s on line %d
                    115: NULL
                    116: -- Iteration 5 --
                    117: 
                    118: Warning: uasort() expects parameter 1 to be array, double given in %s on line %d
                    119: NULL
                    120: -- Iteration 6 --
                    121: 
                    122: Warning: uasort() expects parameter 1 to be array, double given in %s on line %d
                    123: NULL
                    124: -- Iteration 7 --
                    125: 
                    126: Warning: uasort() expects parameter 1 to be array, double given in %s on line %d
                    127: NULL
                    128: -- Iteration 8 --
                    129: 
                    130: Warning: uasort() expects parameter 1 to be array, double given in %s on line %d
                    131: NULL
                    132: -- Iteration 9 --
                    133: 
                    134: Warning: uasort() expects parameter 1 to be array, double given in %s on line %d
                    135: NULL
                    136: -- Iteration 10 --
                    137: 
                    138: Warning: uasort() expects parameter 1 to be array, null given in %s on line %d
                    139: NULL
                    140: -- Iteration 11 --
                    141: 
                    142: Warning: uasort() expects parameter 1 to be array, null given in %s on line %d
                    143: NULL
                    144: -- Iteration 12 --
                    145: 
                    146: Warning: uasort() expects parameter 1 to be array, boolean given in %s on line %d
                    147: NULL
                    148: -- Iteration 13 --
                    149: 
                    150: Warning: uasort() expects parameter 1 to be array, boolean given in %s on line %d
                    151: NULL
                    152: -- Iteration 14 --
                    153: 
                    154: Warning: uasort() expects parameter 1 to be array, boolean given in %s on line %d
                    155: NULL
                    156: -- Iteration 15 --
                    157: 
                    158: Warning: uasort() expects parameter 1 to be array, boolean given in %s on line %d
                    159: NULL
                    160: -- Iteration 16 --
                    161: 
                    162: Warning: uasort() expects parameter 1 to be array, string given in %s on line %d
                    163: NULL
                    164: -- Iteration 17 --
                    165: 
                    166: Warning: uasort() expects parameter 1 to be array, string given in %s on line %d
                    167: NULL
                    168: -- Iteration 18 --
                    169: 
                    170: Warning: uasort() expects parameter 1 to be array, string given in %s on line %d
                    171: NULL
                    172: -- Iteration 19 --
                    173: 
                    174: Warning: uasort() expects parameter 1 to be array, string given in %s on line %d
                    175: NULL
                    176: -- Iteration 20 --
                    177: 
                    178: Warning: uasort() expects parameter 1 to be array, resource given in %s on line %d
                    179: NULL
                    180: -- Iteration 21 --
                    181: 
                    182: Warning: uasort() expects parameter 1 to be array, null given in %s on line %d
                    183: NULL
                    184: -- Iteration 22 --
                    185: 
                    186: Warning: uasort() expects parameter 1 to be array, null given in %s on line %d
                    187: NULL
                    188: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>