--- /dev/null
+--TEST--
+array_search() tests
+--FILE--
+<?php
+
+$a = array(1=>0, 2=>1, 4=>3, "a"=>"b", "c"=>"d");
+
+var_dump(array_search(1));
+var_dump(array_search(1,1));
+var_dump(array_search("a",$a));
+var_dump(array_search("0",$a, true));
+var_dump(array_search("0",$a));
+var_dump(array_search(0,$a));
+var_dump(array_search(1,$a));
+var_dump(array_search("d",$a, true));
+var_dump(array_search("d",$a));
+var_dump(array_search(-1,$a, true));
+
+echo "Done\n";
+?>
+--EXPECTF--
+Warning: array_search() expects at least 2 parameters, 1 given in %s on line %d
+NULL
+
+Warning: array_search() expects parameter 2 to be array, integer given in %s on line %d
+NULL
+int(1)
+bool(false)
+int(1)
+int(1)
+int(2)
+string(1) "c"
+int(1)
+bool(false)
+Done
+--UEXPECTF--
+Warning: array_search() expects at least 2 parameters, 1 given in %s on line %d
+NULL
+
+Warning: array_search() expects parameter 2 to be array, integer given in %s on line %d
+NULL
+int(1)
+bool(false)
+int(1)
+int(1)
+int(2)
+unicode(1) "c"
+int(1)
+bool(false)
+Done
--- /dev/null
+--TEST--
+array_walk() tests
+--FILE--
+<?php
+
+var_dump(array_walk());
+$var = 1;
+var_dump(array_walk($var,1));
+$var = array();
+var_dump(array_walk($var,""));
+
+function foo($v1, $v2, $v3) {
+ var_dump($v1);
+ var_dump($v2);
+ var_dump($v3);
+}
+
+$var = array(1,2);
+var_dump(array_walk($var, "foo", "data"));
+
+function foo2($v1, $v2, $v3) {
+ throw new Exception($v3);
+}
+
+try {
+ var_dump(array_walk($var,"foo2", "data"));
+} catch (Exception $e) {
+ var_dump($e->getMessage());
+}
+
+echo "Done\n";
+?>
+--EXPECTF--
+Warning: array_walk() expects at least 2 parameters, 0 given in %s on line %d
+NULL
+
+Warning: array_walk() expects parameter 1 to be array, integer given in %s on line %d
+NULL
+
+Warning: array_walk() expects parameter 2 to be valid callback, string given in %s on line %d
+NULL
+int(1)
+int(0)
+string(4) "data"
+int(2)
+int(1)
+string(4) "data"
+bool(true)
+string(4) "data"
+Done
+--UEXPECTF--
+Warning: array_walk() expects at least 2 parameters, 0 given in %s on line %d
+NULL
+
+Warning: array_walk() expects parameter 1 to be array, integer given in %s on line %d
+NULL
+
+Warning: array_walk() expects parameter 2 to be valid callback, Unicode string given in %s on line %d
+NULL
+int(1)
+int(0)
+unicode(4) "data"
+int(2)
+int(1)
+unicode(4) "data"
+bool(true)
+unicode(4) "data"
+Done
--- /dev/null
+--TEST--
+array_walk_recursive() tests
+--FILE--
+<?php
+
+var_dump(array_walk_recursive());
+$var = 1;
+var_dump(array_walk_recursive($var,1));
+$var = array();
+var_dump(array_walk_recursive($var,""));
+
+function foo($v1, $v2, $v3) {
+ var_dump($v1);
+ var_dump($v2);
+ var_dump($v3);
+}
+
+$var = array(1,2, array(2,3));
+var_dump(array_walk_recursive($var, "foo", "data"));
+
+function foo2($v1, $v2, $v3) {
+ throw new Exception($v3);
+}
+
+try {
+ var_dump(array_walk_recursive($var,"foo2", "data"));
+} catch (Exception $e) {
+ var_dump($e->getMessage());
+}
+
+echo "Done\n";
+?>
+--EXPECTF--
+Warning: array_walk_recursive() expects at least 2 parameters, 0 given in %s on line %d
+NULL
+
+Warning: array_walk_recursive() expects parameter 1 to be array, integer given in %s on line %d
+NULL
+
+Warning: array_walk_recursive() expects parameter 2 to be valid callback, string given in %s on line %d
+NULL
+int(1)
+int(0)
+string(4) "data"
+int(2)
+int(1)
+string(4) "data"
+int(2)
+int(0)
+string(4) "data"
+int(3)
+int(1)
+string(4) "data"
+bool(true)
+string(4) "data"
+Done
+--UEXPECTF--
+Warning: array_walk_recursive() expects at least 2 parameters, 0 given in %s on line %d
+NULL
+
+Warning: array_walk_recursive() expects parameter 1 to be array, integer given in %s on line %d
+NULL
+
+Warning: array_walk_recursive() expects parameter 2 to be valid callback, Unicode string given in %s on line %d
+NULL
+int(1)
+int(0)
+unicode(4) "data"
+int(2)
+int(1)
+unicode(4) "data"
+int(2)
+int(0)
+unicode(4) "data"
+int(3)
+int(1)
+unicode(4) "data"
+bool(true)
+unicode(4) "data"
+Done
["+123"]=>
int(1)
}
+--UEXPECT--
+array(5) {
+ [u"-000"]=>
+ int(1)
+ [u" 001"]=>
+ int(1)
+ [1]=>
+ int(1)
+ [u" 123"]=>
+ int(1)
+ [u"+123"]=>
+ int(1)
+}
--- /dev/null
+--TEST--
+max() tests
+--FILE--
+<?php
+
+var_dump(max());
+var_dump(max(1));
+var_dump(max(array()));
+var_dump(max(new stdclass));
+var_dump(max(2,1,2));
+var_dump(max(2.1,2.11,2.09));
+var_dump(max("", "t", "b"));
+var_dump(max(false, true, false));
+var_dump(max(true, false, true));
+var_dump(max(1, true, false, true));
+var_dump(max(0, true, false, true));
+
+echo "Done\n";
+?>
+--EXPECTF--
+Warning: max(): Atleast one value should be passed in %s on line %d
+NULL
+
+Warning: Wrong parameter count for max() in %s on line %d
+NULL
+
+Warning: max(): Array must contain atleast one element in %s on line %d
+bool(false)
+
+Warning: Wrong parameter count for max() in %s on line %d
+NULL
+int(2)
+float(2.11)
+string(1) "t"
+bool(true)
+bool(true)
+int(1)
+bool(true)
+Done
+--UEXPECTF--
+Warning: max(): Atleast one value should be passed in %s on line %d
+NULL
+
+Warning: Wrong parameter count for max() in %s on line %d
+NULL
+
+Warning: max(): Array must contain atleast one element in %s on line %d
+bool(false)
+
+Warning: Wrong parameter count for max() in %s on line %d
+NULL
+int(2)
+float(2.11)
+unicode(1) "t"
+bool(true)
+bool(true)
+int(1)
+bool(true)
+Done
--- /dev/null
+--TEST--
+min() tests
+--FILE--
+<?php
+
+var_dump(min());
+var_dump(min(1));
+var_dump(min(array()));
+var_dump(min(new stdclass));
+var_dump(min(2,1,2));
+var_dump(min(2.1,2.11,2.09));
+var_dump(min("", "t", "b"));
+var_dump(min(false, true, false));
+var_dump(min(true, false, true));
+var_dump(min(1, true, false, true));
+var_dump(min(0, true, false, true));
+
+echo "Done\n";
+?>
+--EXPECTF--
+Warning: min(): Atleast one value should be passed in %s on line %d
+NULL
+
+Warning: Wrong parameter count for min() in %s on line %d
+NULL
+
+Warning: min(): Array must contain atleast one element in %s on line %d
+bool(false)
+
+Warning: Wrong parameter count for min() in %s on line %d
+NULL
+int(1)
+float(2.09)
+string(0) ""
+bool(false)
+bool(false)
+bool(false)
+int(0)
+Done
+--UEXPECTF--
+Warning: min(): Atleast one value should be passed in %s on line %d
+NULL
+
+Warning: Wrong parameter count for min() in %s on line %d
+NULL
+
+Warning: min(): Array must contain atleast one element in %s on line %d
+bool(false)
+
+Warning: Wrong parameter count for min() in %s on line %d
+NULL
+int(1)
+float(2.09)
+unicode(0) ""
+bool(false)
+bool(false)
+bool(false)
+int(0)
+Done