summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorXinchen Hui <laruence@php.net>2015-01-19 01:04:23 -0500
committerXinchen Hui <laruence@php.net>2015-01-19 01:36:56 -0500
commit020b51b46eceb1a8c2876aac263772ed55ba9a1a (patch)
tree9c9822bdfeb1f7cf58463f3b1f30911846a94cbe /ext
parent0706032b7344ee3be3e95911e18966b3d97bfe39 (diff)
downloadphp-git-020b51b46eceb1a8c2876aac263772ed55ba9a1a.tar.gz
Don't use >= as sorting condition
which could avoid breaking usage like: usort($a, function($a, $b) { return $a > $b; })
Diffstat (limited to 'ext')
-rw-r--r--ext/standard/tests/array/usort_variation11.phpt25
1 files changed, 25 insertions, 0 deletions
diff --git a/ext/standard/tests/array/usort_variation11.phpt b/ext/standard/tests/array/usort_variation11.phpt
new file mode 100644
index 0000000000..b6cdeef766
--- /dev/null
+++ b/ext/standard/tests/array/usort_variation11.phpt
@@ -0,0 +1,25 @@
+--TEST--
+Test usort() function : usage variations - binary return cmp
+--FILE--
+<?php
+
+function ucmp($a, $b) {
+ return $a > $b;
+}
+
+$range = array(2, 4, 8, 16, 32, 64, 128);
+
+foreach ($range as $r) {
+ $backup = $array = range(0, $r);
+ shuffle($array);
+ usort($array, "ucmp");
+ if ($array != $backup) {
+ var_dump($array);
+ var_dump($backup);
+ die("Whatever sorting algo you used, this test should never be broken");
+ }
+}
+echo "okey";
+?>
+--EXPECT--
+okey