smantoor                Wed Oct 22 05:51:52 2008 UTC

  Added files:                 
    /php-src/ext/standard/tests/array   array_diff_ukey_variation7.phpt 
                                        array_diff_ukey_variation10.phpt 
                                        array_diff_ukey_variation8.phpt 
                                        array_diff_ukey_variation9.phpt 
                                        array_diff_ukey_error.phpt 
                                        array_diff_ukey_variation1.phpt 
                                        array_diff_ukey_variation2.phpt 
                                        array_diff_ukey_variation3.phpt 
                                        array_diff_ukey_variation4.phpt 
                                        array_diff_ukey_variation5.phpt 
                                        array_diff_ukey_variation6.phpt 
  Log:
  New PHP testcases for array_diff_ukey function
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation7.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation7.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation7.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing float indexed array
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$input_array = array(0 => '0', 10 => '10', -10 => '-10', 20 =>'20'); 
$float_indx_array = array(0.0 => '0.0', 10.5 => '10.5', -30.5 => '-30.5'); 

function key_compare_func($key1, $key2)
{
  return strcasecmp($key1, $key2);
}

echo "\n-- Testing array_diff_ukey() function with float indexed array --\n";

var_dump( array_diff_ukey($float_indx_array, $input_array, 'key_compare_func') 
);
var_dump( array_diff_ukey($input_array, $float_indx_array, 'key_compare_func') 
);

?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

-- Testing array_diff_ukey() function with float indexed array --
array(1) {
  [-30]=>
  unicode(5) "-30.5"
}
array(2) {
  [-10]=>
  unicode(3) "-10"
  [20]=>
  unicode(2) "20"
}
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation10.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation10.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation10.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing non-existing 
function name to callback
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

//Initialize variables
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");

//function name within double quotes
var_dump( array_diff_ukey($array1, $array1, "unknown_function") );

//function name within single quotes
var_dump( array_diff_ukey($array1, $array1, 'unknown_function') );

//function name without quotes
var_dump( array_diff_ukey($array1, $array1, unknown_function) );

?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, function 
'unknown_function' not found or invalid function name in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, function 
'unknown_function' not found or invalid function name in %s on line %d
NULL

Notice: Use of undefined constant unknown_function - assumed 'unknown_function' 
in %s on line %d

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, function 
'unknown_function' not found or invalid function name in %s on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation8.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation8.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation8.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing boolean indexed 
array
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$input_array = array(0 => '0', 1 => '1', -10 => '-10', 'true' => 1, 'false' => 
0); 
$boolean_indx_array = array(true => 'boolt', false => 'boolf', TRUE => 'boolT', 
FALSE => 'boolF');

function key_compare_func($key1, $key2)
{
  return strcasecmp($key1, $key2);
}

echo "\n-- Testing array_diff_ukey() function with boolean indexed array --\n";

var_dump( array_diff_ukey($boolean_indx_array, $input_array, 
'key_compare_func') );
var_dump( array_diff_ukey($input_array, $boolean_indx_array, 
'key_compare_func') );

?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

-- Testing array_diff_ukey() function with boolean indexed array --
array(0) {
}
array(3) {
  [-10]=>
  unicode(3) "-10"
  [u"true"]=>
  int(1)
  [u"false"]=>
  int(0)
}
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation9.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation9.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation9.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing null,unset and 
undefined variable indexed array
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$input_array = array(10 => '10', "" => 'empty'); 

//get an unset variable
$unset_var = 10;
unset ($unset_var);

$input_arrays = array(
      'null indexed' => array(NULL => 'null 1', null => 'null 2'),
      'undefined indexed' => array(@$undefined_var => 'undefined'),
      'unset  indexed' => array(@$unset_var => 'unset'),
);

foreach($input_arrays as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($value, $input_array, 'strcasecmp') );
      var_dump( array_diff_ukey($input_array, $value, 'strcasecmp') );
}      

?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--null indexed--
array(0) {
}
array(1) {
  [10]=>
  unicode(2) "10"
}

--undefined indexed--
array(0) {
}
array(1) {
  [10]=>
  unicode(2) "10"
}

--unset  indexed--
array(0) {
}
array(1) {
  [10]=>
  unicode(2) "10"
}
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_error.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_error.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_error.phpt
--TEST--
Test array_diff_ukey() function : error conditions 
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : error conditions ***\n";

// Initialize 
$array1 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);
$extra_arg = 10;

function key_compare_func($key1, $key2)
{
    if ($key1 == $key2) {
        return 0;
    }
    return ($key1 > $key2)? 1:-1;
}

//Test array_diff_ukey with one more than the expected number of arguments
echo "\n-- Testing array_diff_ukey() function with more than expected no. of 
arguments --\n";
var_dump( array_diff_ukey($array1, $array2, 'key_compare_func', $extra_arg) );

// Testing array_diff_ukey with one less than the expected number of arguments
echo "\n-- Testing array_diff_ukey() function with less than expected no. of 
arguments --\n";
var_dump( array_diff_ukey($array1, $array2) );

// Testing array_diff_ukey with one less than the expected number of arguments
echo "\n-- Testing array_diff_ukey() function with no arguments --\n";
var_dump( array_diff_ukey() );
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : error conditions ***

-- Testing array_diff_ukey() function with more than expected no. of arguments 
--

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

-- Testing array_diff_ukey() function with less than expected no. of arguments 
--

Warning: array_diff_ukey(): at least 3 parameters are required, 2 given in %s 
on line %d
NULL

-- Testing array_diff_ukey() function with no arguments --

Warning: array_diff_ukey(): at least 3 parameters are required, 0 given in %s 
on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation1.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation1.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation1.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing unexpected values 
to first argument
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);
$array3 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);

function key_compare_func($key1, $key2)
{
    if ($key1 == $key2) {
        return 0;
    }
    return ($key1 > $key2)? 1:-1;
}

//get an unset variable
$unset_var = 10;
unset ($unset_var);

//resource variable
$fp = fopen(__FILE__, "r");

// define some classes
class classWithToString
{
        public function __toString() {
                return "Class A object";
        }
}

class classWithoutToString
{
}

// heredoc string
$heredoc = <<<EOT
hello world
EOT;

//array of values to iterate over
$inputs = array(

      // int data
      'int 0' => 0,
      'int 1' => 1,
      'int 12345' => 12345,
      'int -12345' => -2345,

      // float data
      'float 10.5' => 10.5,
      'float -10.5' => -10.5,
      'float 12.3456789000e10' => 12.3456789000e10,
      'float -12.3456789000e10' => -12.3456789000e10,
      'float .5' => .5,

      // null data
      'uppercase NULL' => NULL,
      'lowercase null' => null,

      // boolean data
      'lowercase true' => true,
      'lowercase false' =>false,
      'uppercase TRUE' =>TRUE,
      'uppercase FALSE' =>FALSE,

      // empty data
      'empty string DQ' => "",
      'empty string SQ' => '',

      // string data
      'string DQ' => "string",
      'string SQ' => 'string',
      'mixed case string' => "sTrInG",
      'heredoc' => $heredoc,

      // object data
      'instance of classWithToString' => new classWithToString(),
      'instance of classWithoutToString' => new classWithoutToString(),

      // undefined data
      'undefined var' => @$undefined_var,

      // unset data
      'unset var' => @$unset_var,

      // resource data
      'resource' => $fp,
);

// loop through each element of the array for arr1
foreach($inputs as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($value, $array2, 'key_compare_func') );
      var_dump( array_diff_ukey($value, $array2, $array3, 'key_compare_func') );
};

fclose($fp);
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--int 0--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--int 1--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--int 12345--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--int -12345--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--float 10.5--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--float -10.5--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--float 12.3456789000e10--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--float -12.3456789000e10--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--float .5--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--uppercase NULL--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--lowercase null--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--lowercase true--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--lowercase false--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--uppercase TRUE--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--uppercase FALSE--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--empty string DQ--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--empty string SQ--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--string DQ--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--string SQ--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--mixed case string--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--heredoc--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--instance of classWithToString--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--instance of classWithoutToString--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--undefined var--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--unset var--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

--resource--

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #1 is not an array in %s on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation2.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation2.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation2.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing unexpected values 
to second argument
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialize function arguments not being substituted (if any)
$array1 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);
$array3 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);


//Initialize key_comp_func of type callback
function key_compare_func($key1, $key2)
{
    if ($key1 == $key2) {
        return 0;
    }
    return ($key1 > $key2)? 1:-1;
}

//get an unset variable
$unset_var = 10;
unset ($unset_var);

//resource variable
$fp = fopen(__FILE__, "r");

// define some classes
class classWithToString
{
        public function __toString() {
                return "Class A object";
        }
}

class classWithoutToString
{
}

// heredoc string
$heredoc = <<<EOT
hello world
EOT;

//array of values to iterate over
$inputs = array(

      // int data
      'int 0' => 0,
      'int 1' => 1,
      'int 12345' => 12345,
      'int -12345' => -2345,

      // float data
      'float 10.5' => 10.5,
      'float -10.5' => -10.5,
      'float 12.3456789000e10' => 12.3456789000e10,
      'float -12.3456789000e10' => -12.3456789000e10,
      'float .5' => .5,

      // null data
      'uppercase NULL' => NULL,
      'lowercase null' => null,

      // boolean data
      'lowercase true' => true,
      'lowercase false' =>false,
      'uppercase TRUE' =>TRUE,
      'uppercase FALSE' =>FALSE,

      // empty data
      'empty string DQ' => "",
      'empty string SQ' => '',

      // string data
      'string DQ' => "string",
      'string SQ' => 'string',
      'mixed case string' => "sTrInG",
      'heredoc' => $heredoc,

      // object data
      'instance of classWithToString' => new classWithToString(),
      'instance of classWithoutToString' => new classWithoutToString(),

      // undefined data
      'undefined var' => @$undefined_var,

      // unset data
      'unset var' => @$unset_var,

      // resource data
      'resource' => $fp,

);

// loop through each element of the array for arr2

foreach($inputs as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($array1, $value, 'key_compare_func') );
      var_dump( array_diff_ukey($array1, $value, $array3, 'key_compare_func') );
};

fclose($fp);
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--int 0--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--int 1--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--int 12345--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--int -12345--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--float 10.5--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--float -10.5--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--float 12.3456789000e10--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--float -12.3456789000e10--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--float .5--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--uppercase NULL--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--lowercase null--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--lowercase true--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--lowercase false--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--uppercase TRUE--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--uppercase FALSE--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--empty string DQ--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--empty string SQ--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--string DQ--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--string SQ--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--mixed case string--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--heredoc--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--instance of classWithToString--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--instance of classWithoutToString--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--undefined var--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--unset var--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

--resource--

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL

Warning: array_diff_ukey(): Argument #2 is not an array in %s on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation3.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation3.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation3.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing unexpected values 
to third optional argument
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments.
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$array1 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);
$array2 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);

function key_compare_func($key1, $key2)
{
    if ($key1 == $key2) {
        return 0;
    }
    return ($key1 > $key2)? 1:-1;
}

//get an unset variable
$unset_var = 10;
unset ($unset_var);

// resource variable
$fp = fopen(__FILE__, "r");

// define some classes
class classWithToString
{
        public function __toString() {
                return "Class A object";
        }
}

class classWithoutToString
{
}

// heredoc string
$heredoc = <<<EOT
hello world
EOT;

//array of values to iterate over
$inputs = array(

      // int data
      'int 0' => 0,
      'int 1' => 1,
      'int 12345' => 12345,
      'int -12345' => -2345,

      // float data
      'float 10.5' => 10.5,
      'float -10.5' => -10.5,
      'float 12.3456789000e10' => 12.3456789000e10,
      'float -12.3456789000e10' => -12.3456789000e10,
      'float .5' => .5,

      // null data
      'uppercase NULL' => NULL,
      'lowercase null' => null,

      // boolean data
      'lowercase true' => true,
      'lowercase false' =>false,
      'uppercase TRUE' =>TRUE,
      'uppercase FALSE' =>FALSE,

      // empty data
      'empty string DQ' => "",
      'empty string SQ' => '',

      // string data
      'string DQ' => "string",
      'string SQ' => 'string',
      'mixed case string' => "sTrInG",
      'heredoc' => $heredoc,

      // object data
      'instance of classWithToString' => new classWithToString(),
      'instance of classWithoutToString' => new classWithoutToString(),

      // undefined data
      'undefined var' => @$undefined_var,

      // unset data
      'unset var' => @$unset_var,

      // resource data
      'resource' => $fp,
);

// loop through each element of the array for key_comp_func

foreach($inputs as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($array1, $array2, $value, 'key_compare_func') );
};

fclose($fp);
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--int 0--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--int 1--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--int 12345--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--int -12345--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--float 10.5--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--float -10.5--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--float 12.3456789000e10--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--float -12.3456789000e10--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--float .5--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--uppercase NULL--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--lowercase null--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--lowercase true--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--lowercase false--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--uppercase TRUE--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--uppercase FALSE--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--empty string DQ--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--empty string SQ--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--string DQ--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--string SQ--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--mixed case string--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--heredoc--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--instance of classWithToString--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--instance of classWithoutToString--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--undefined var--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--unset var--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL

--resource--

Warning: array_diff_ukey(): Argument #3 is not an array in %s on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation4.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation4.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation4.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing unexpected values 
to callback argument
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$array1 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);
$array2 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);
$array3 = array(1, 2, 3, 4, 5);

//get an unset variable
$unset_var = 10;
unset ($unset_var);

//resource variable
$fp = fopen(__FILE__, "r");

// define some classes
class classWithToString
{
        public function __toString() {
                return "Class A object";
        }
}

class classWithoutToString
{
}

// heredoc string
$heredoc = <<<EOT
hello world
EOT;

//array of values to iterate over
$inputs = array(

      // int data
      'int 0' => 0,
      'int 1' => 1,
      'int 12345' => 12345,
      'int -12345' => -12345,

      // float data
      'float 10.5' => 10.5,
      'float -10.5' => -10.5,
      'float 12.3456789000e10' => 12.3456789000e10,
      'float -12.3456789000e10' => -12.3456789000e10,
      'float .5' => .5,

      // null data
      'uppercase NULL' => NULL,
      'lowercase null' => null,

      // boolean data
      'lowercase true' => true,
      'lowercase false' =>false,
      'uppercase TRUE' =>TRUE,
      'uppercase FALSE' =>FALSE,

      // object data
      'instance of classWithToString' => new classWithToString(),
          'instance of classWithoutToString' => new classWithoutToString(),

      // undefined data
      'undefined var' => @$undefined_var,

      // unset data
      'unset var' => @$unset_var,

      // resource data
      'resource' => $fp,
);

// loop through each element of the array for ...

foreach($inputs as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($array1, $array2, $value) );
      var_dump( array_diff_ukey($array1, $array2, $array3, $value) );
};

fclose($fp);
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--int 0--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--int 1--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--int 12345--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--int -12345--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--float 10.5--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--float -10.5--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--float 12.3456789000e10--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--float -12.3456789000e10--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--float .5--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--uppercase NULL--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--lowercase null--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--lowercase true--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--lowercase false--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--uppercase TRUE--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--uppercase FALSE--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--instance of classWithToString--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--instance of classWithoutToString--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--undefined var--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--unset var--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL

--resource--

Warning: array_diff_ukey() expects parameter 3 to be a valid callback, no array 
or string given in %s on line %d
NULL

Warning: array_diff_ukey() expects parameter 4 to be a valid callback, no array 
or string given in %s on line %d
NULL
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation5.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation5.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation5.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing multi-dimensional 
array
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. User supplied function is used for 
comparing the keys. This function is like array_udiff() but works on the keys 
instead of the values. The associativity is preserved. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$array1 = array(

          'first' => array('blue' => 1, 'red' => 2),
              
      'second' => array('yellow' => 7),
              
      'third' => array(0 => 'zero'),
);

$array2 = array (

          'first' => array('blue' => 1, 'red' => 2,),
              
      'second' => array('cyan' => 8),
              
      'fourth' => array(2 => 'two'), 
);

echo "\n-- Testing array_diff_ukey() function with multi dimensional array 
--\n";
var_dump( array_diff_ukey($array1, $array2, 'strcasecmp') );
var_dump( array_diff_ukey($array2, $array1, 'strcasecmp') );
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

-- Testing array_diff_ukey() function with multi dimensional array --
array(1) {
  [u"third"]=>
  array(1) {
    [0]=>
    unicode(4) "zero"
  }
}
array(1) {
  [u"fourth"]=>
  array(1) {
    [2]=>
    unicode(3) "two"
  }
}
===DONE===

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_diff_ukey_variation6.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/array_diff_ukey_variation6.phpt
+++ php-src/ext/standard/tests/array/array_diff_ukey_variation6.phpt
--TEST--
Test array_diff_ukey() function : usage variation - Passing integer indexed 
array
--FILE--
<?php
/* Prototype  : array array_diff_ukey(array arr1, array arr2 [, array ...], 
callback key_comp_func)
 * Description: Returns the entries of arr1 that have keys which are not 
present in any of the others arguments. 
 * Source code: ext/standard/array.c
 */

echo "*** Testing array_diff_ukey() : usage variation ***\n";

// Initialise function arguments not being substituted (if any)
$input_array = array(-07 => '-07', 0xA => '0xA'); 

$input_arrays = array(
      'decimal indexed' => array(10 => '10', '-17' => '-17'),
      'octal indexed' => array(-011 => '-011', 012 => '012'),
      'hexa  indexed' => array(0x12 => '0x12', -0x7 => '-0x7', ),
);

function key_compare_func($key1, $key2)
{
  return strcasecmp($key1, $key2);
}

foreach($input_arrays as $key =>$value) {
      echo "\n--$key--\n";
      var_dump( array_diff_ukey($value, $input_array, 'key_compare_func') );
      var_dump( array_diff_ukey($input_array, $value, 'key_compare_func') );
}
?>
===DONE===
--EXPECTF--
*** Testing array_diff_ukey() : usage variation ***

--decimal indexed--
array(1) {
  [-17]=>
  unicode(3) "-17"
}
array(1) {
  [-7]=>
  unicode(3) "-07"
}

--octal indexed--
array(1) {
  [-9]=>
  unicode(4) "-011"
}
array(1) {
  [-7]=>
  unicode(3) "-07"
}

--hexa  indexed--
array(1) {
  [18]=>
  unicode(4) "0x12"
}
array(1) {
  [10]=>
  unicode(3) "0xA"
}
===DONE===

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to