????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.37 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/standard/tests/math/ |
Upload File : |
--TEST--
Test mt_rand() - basic function test mt_rand()
--FILE--
<?php
$default_max = mt_getrandmax();
echo "\nmt_rand() tests with default min and max value (i.e 0 thru ", $default_max, ")\n";
for ($i = 0; $i < 100; $i++) {
$res = mt_rand();
// By default RAND_MAX is 32768 although no constant is defined for it for user space apps
if (!is_int($res) || $res < 0 || $res > $default_max) {
break;
}
}
if ($i != 100) {
echo "FAILED: res = ", $res, " min = 0 max = ", $default_max, "\n";
} else {
echo "PASSED: range min = 0 max = ", $default_max, "\n";
}
echo "\nmt_rand() tests with defined min and max value\n";
$min = array(10,
100,
10.5,
10.5e3,
0x10,
0400);
$max = array(100,
1000,
19.5,
10.5e5,
0x10000,
0700);
for ($x = 0; $x < count($min); $x++) {
for ($i = 0; $i < 100; $i++) {
$res = mt_rand($min[$x], $max[$x]);
if (!is_int($res) || $res < intval($min[$x]) || $res > intval($max[$x])) {
echo "FAILED: res = ", $res, " min = ", intval($min[$x]), " max = ", intval($max[$x]), "\n";
break;
}
}
if ($i == 100) {
echo "PASSED: range min = ", intval($min[$x]), " max = ", intval($max[$x]), "\n";
}
}
echo "\nNon-numeric cases\n";
$min = array(true,
false,
null,
"10",
"0x10",
"10.5");
// Eexepcted numerical equivalent of above non-numerics
$minval = array(1,
0,
0,
10,
0,
10);
for ($x = 0; $x < count($min); $x++) {
for ($i = 0; $i < 100; $i++) {
$res = mt_rand($min[$x], 100);
if (!is_int($res) || $res < intval($minval[$x]) || $res > 100) {
echo "FAILED: res = ", $res, " min = ", intval($min[$x]), " max = ", intval($max[$x]), "\n";
break;
}
}
if ($i == 100) {
echo "PASSED range min = ", intval($min[$x]), " max = 100\n";
}
}
?>
--EXPECTF--
mt_rand() tests with default min and max value (i.e 0 thru 2147483647)
PASSED: range min = 0 max = 2147483647
mt_rand() tests with defined min and max value
PASSED: range min = 10 max = 100
PASSED: range min = 100 max = 1000
PASSED: range min = 10 max = 19
PASSED: range min = 10500 max = 1050000
PASSED: range min = 16 max = 65536
PASSED: range min = 256 max = 448
Non-numeric cases
PASSED range min = 1 max = 100
PASSED range min = 0 max = 100
PASSED range min = 0 max = 100
PASSED range min = 10 max = 100
PASSED range min = 0 max = 100
PASSED range min = 10 max = 100