zoe Fri Feb 1 17:27:43 2008 UTC Added files: (Branch: PHP_5_2) /php-src/ext/standard/tests/math atan2_error.phpt atan2_basic.phpt bindec_basic.phpt decbin_basic.phpt bindec_error.phpt base_convert_error.phpt base_convert_basic.phpt decbin_error.phpt constants_basic.phpt Log: A few new tests for math functions - Note the "constants" test will fail on Windows - Bug 42143.
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/atan2_error.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/atan2_error.phpt +++ php-src/ext/standard/tests/math/atan2_error.phpt --TEST-- Test atan2() - wrong params atan2() --FILE-- <?php atan2(); atan2(36); atan2(36,25,0); ?> --EXPECTF--
Warning: atan2() expects exactly 2 parameters, 0 given in %s on line %d Warning: atan2() expects exactly 2 parameters, 1 given in %s on line %d Warning: atan2() expects exactly 2 parameters, 3 given in %s on line %d http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/atan2_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/atan2_basic.phpt +++ php-src/ext/standard/tests/math/atan2_basic.phpt --TEST-- Test atan2() - basic function test of atan2() --INI-- precision=14 --FILE-- <?php $valuesy = array(23, -23, 2.345e1, -2.345e1, 0x17, 027, "23", "23.45", "2.345e1", null, true, false); $valuesx = array(23, -23, 2.345e1, -2.345e1, 0x17, 027, "23", "23.45", "2.345e1", null, true, false); for ($i = 0; $i < count($valuesy); $i++) { for ($j = 0; $j < count($valuesx); $j++) { $res = atan2($valuesy[$i], $valuesx[$j]); echo "Y:$valuesy[$i] X:$valuesx[$j] "; var_dump($res); } } ?> --EXPECTF-- Y:23 X:23 float(0.78539816339745) Y:23 X:-23 float(2.3561944901923) Y:23 X:23.45 float(0.77571063007847) Y:23 X:-23.45 float(2.3658820235113) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23.45 float(0.77571063007847) Y:23 X:2.345e1 float(0.77571063007847) Y:23 X: float(1.5707963267949) Y:23 X:1 float(1.5273454314034) Y:23 X: float(1.5707963267949) Y:-23 X:23 float(-0.78539816339745) Y:-23 X:-23 float(-2.3561944901923) Y:-23 X:23.45 float(-0.77571063007847) Y:-23 X:-23.45 float(-2.3658820235113) Y:-23 X:23 float(-0.78539816339745) Y:-23 X:23 float(-0.78539816339745) Y:-23 X:23 float(-0.78539816339745) Y:-23 X:23.45 float(-0.77571063007847) Y:-23 X:2.345e1 float(-0.77571063007847) Y:-23 X: float(-1.5707963267949) Y:-23 X:1 float(-1.5273454314034) Y:-23 X: float(-1.5707963267949) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:-23 float(2.3465069568734) Y:23.45 X:23.45 float(0.78539816339745) Y:23.45 X:-23.45 float(2.3561944901923) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23.45 float(0.78539816339745) Y:23.45 X:2.345e1 float(0.78539816339745) Y:23.45 X: float(1.5707963267949) Y:23.45 X:1 float(1.5281782247706) Y:23.45 X: float(1.5707963267949) Y:-23.45 X:23 float(-0.79508569671643) Y:-23.45 X:-23 float(-2.3465069568734) Y:-23.45 X:23.45 float(-0.78539816339745) Y:-23.45 X:-23.45 float(-2.3561944901923) Y:-23.45 X:23 float(-0.79508569671643) Y:-23.45 X:23 float(-0.79508569671643) Y:-23.45 X:23 float(-0.79508569671643) Y:-23.45 X:23.45 float(-0.78539816339745) Y:-23.45 X:2.345e1 float(-0.78539816339745) Y:-23.45 X: float(-1.5707963267949) Y:-23.45 X:1 float(-1.5281782247706) Y:-23.45 X: float(-1.5707963267949) Y:23 X:23 float(0.78539816339745) Y:23 X:-23 float(2.3561944901923) Y:23 X:23.45 float(0.77571063007847) Y:23 X:-23.45 float(2.3658820235113) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23.45 float(0.77571063007847) Y:23 X:2.345e1 float(0.77571063007847) Y:23 X: float(1.5707963267949) Y:23 X:1 float(1.5273454314034) Y:23 X: float(1.5707963267949) Y:23 X:23 float(0.78539816339745) Y:23 X:-23 float(2.3561944901923) Y:23 X:23.45 float(0.77571063007847) Y:23 X:-23.45 float(2.3658820235113) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23.45 float(0.77571063007847) Y:23 X:2.345e1 float(0.77571063007847) Y:23 X: float(1.5707963267949) Y:23 X:1 float(1.5273454314034) Y:23 X: float(1.5707963267949) Y:23 X:23 float(0.78539816339745) Y:23 X:-23 float(2.3561944901923) Y:23 X:23.45 float(0.77571063007847) Y:23 X:-23.45 float(2.3658820235113) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23 float(0.78539816339745) Y:23 X:23.45 float(0.77571063007847) Y:23 X:2.345e1 float(0.77571063007847) Y:23 X: float(1.5707963267949) Y:23 X:1 float(1.5273454314034) Y:23 X: float(1.5707963267949) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:-23 float(2.3465069568734) Y:23.45 X:23.45 float(0.78539816339745) Y:23.45 X:-23.45 float(2.3561944901923) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23 float(0.79508569671643) Y:23.45 X:23.45 float(0.78539816339745) Y:23.45 X:2.345e1 float(0.78539816339745) Y:23.45 X: float(1.5707963267949) Y:23.45 X:1 float(1.5281782247706) Y:23.45 X: float(1.5707963267949) Y:2.345e1 X:23 float(0.79508569671643) Y:2.345e1 X:-23 float(2.3465069568734) Y:2.345e1 X:23.45 float(0.78539816339745) Y:2.345e1 X:-23.45 float(2.3561944901923) Y:2.345e1 X:23 float(0.79508569671643) Y:2.345e1 X:23 float(0.79508569671643) Y:2.345e1 X:23 float(0.79508569671643) Y:2.345e1 X:23.45 float(0.78539816339745) Y:2.345e1 X:2.345e1 float(0.78539816339745) Y:2.345e1 X: float(1.5707963267949) Y:2.345e1 X:1 float(1.5281782247706) Y:2.345e1 X: float(1.5707963267949) Y: X:23 float(0) Y: X:-23 float(3.1415926535898) Y: X:23.45 float(0) Y: X:-23.45 float(3.1415926535898) Y: X:23 float(0) Y: X:23 float(0) Y: X:23 float(0) Y: X:23.45 float(0) Y: X:2.345e1 float(0) Y: X: float(0) Y: X:1 float(0) Y: X: float(0) Y:1 X:23 float(0.043450895391531) Y:1 X:-23 float(3.0981417581983) Y:1 X:23.45 float(0.042618102024328) Y:1 X:-23.45 float(3.0989745515655) Y:1 X:23 float(0.043450895391531) Y:1 X:23 float(0.043450895391531) Y:1 X:23 float(0.043450895391531) Y:1 X:23.45 float(0.042618102024328) Y:1 X:2.345e1 float(0.042618102024328) Y:1 X: float(1.5707963267949) Y:1 X:1 float(0.78539816339745) Y:1 X: float(1.5707963267949) Y: X:23 float(0) Y: X:-23 float(3.1415926535898) Y: X:23.45 float(0) Y: X:-23.45 float(3.1415926535898) Y: X:23 float(0) Y: X:23 float(0) Y: X:23 float(0) Y: X:23.45 float(0) Y: X:2.345e1 float(0) Y: X: float(0) Y: X:1 float(0) Y: X: float(0) http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/bindec_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/bindec_basic.phpt +++ php-src/ext/standard/tests/math/bindec_basic.phpt --TEST-- Test bindec() - basic function test bindec() --FILE-- <?php $values = array(111000111, 011100000, 1111111111111111111111111111111, 10000000000000000000000000000000, 100002001, '111000111', '011100000', '1111111111111111111111111111111', '10000000000000000000000000000000', '100002001', 'abcdefg', 311015, 31101.3, 31.1013e5, 0x111ABC, 011237, true, false, null); for ($i = 0; $i < count($values); $i++) { $res = bindec($values[$i]); var_dump($res); } ?> --EXPECTF-- int(455) int(0) int(32766) int(5) int(129) int(455) int(224) int(2147483647) float(2147483648) int(129) int(0) int(13) int(13) int(26) int(6) int(0) int(1) int(0) int(0) http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/decbin_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/decbin_basic.phpt +++ php-src/ext/standard/tests/math/decbin_basic.phpt --TEST-- Test decbin() - basic function test --FILE-- <?php $values = array(10, 3950.5, 3.9505e3, 039, 0x5F, "10", "3950.5", "3.9505e3", "039", "0x5F", true, false, null, ); for ($i = 0; $i < count($values); $i++) { $res = decbin($values[$i]); var_dump($res); } ?> --EXPECTF-- string(4) "1010" string(12) "111101101110" string(12) "111101101110" string(2) "11" string(7) "1011111" string(4) "1010" string(12) "111101101110" string(2) "11" string(6) "100111" string(1) "0" string(1) "1" string(1) "0" string(1) "0" --UEXPECTF-- unicode(4) "1010" unicode(12) "111101101110" unicode(12) "111101101110" unicode(2) "11" unicode(7) "1011111" unicode(4) "1010" unicode(12) "111101101110" unicode(2) "11" unicode(6) "100111" unicode(1) "0" unicode(1) "1" unicode(1) "0" unicode(1) "0" http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/bindec_error.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/bindec_error.phpt +++ php-src/ext/standard/tests/math/bindec_error.phpt --TEST-- Test bindec() - basic function test bindec() --FILE-- <?php bindec(); bindec('01010101111',true); ?> --EXPECTF-- Warning: bindec() expects exactly 1 parameter, 0 given in %s on line %d Warning: bindec() expects exactly 1 parameter, 2 given in %s on line %d http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/base_convert_error.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/base_convert_error.phpt +++ php-src/ext/standard/tests/math/base_convert_error.phpt --TEST-- Test base_convert() - wrong params base_convert() --FILE-- <?php base_convert(); base_convert(35); base_convert(35,2); base_convert(1234, 1, 10); base_convert(1234, 10, 37); ?> --EXPECTF-- Warning: base_convert() expects exactly 3 parameters, 0 given in %s on line %d Warning: base_convert() expects exactly 3 parameters, 1 given in %s on line %d Warning: base_convert() expects exactly 3 parameters, 2 given in %s on line %d Warning: base_convert(): Invalid `from base' (1) in %s on line %d Warning: base_convert(): Invalid `to base' (37) in %s on line %d http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/base_convert_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/base_convert_basic.phpt +++ php-src/ext/standard/tests/math/base_convert_basic.phpt --TEST-- Test base_convert() - basic function tests base_convert() --FILE-- <?php $frombase = array(2,8,10,16,36); $tobase = array(2,8,10,16,36); $values = array(10, 27, 39, 039, 0x5F, "10", "27", "39", "5F", "3XYZ" ); for ($f= 0; $f < count($frombase); $f++) { echo "\n...from base is ", $frombase[$f], "\n"; for ($t= 0; $t < count($tobase); $t++) { echo "......to base is ", $tobase[$t], "\n"; for ($i =0; $i < count($values); $i++){ $res = base_convert($values[$i],$frombase[$f],$tobase[$t]); echo ".........value= ", $values[$i], " res = ", $res, "\n"; } } } ?> --EXPECTF--....from base is 2.......to base is 2..........value= 10 res = 10..........value= 27 res = 0..........value= 39 res = 0..........value= 3 res = 0..........value= 95 res = 0..........value= 10 res = 10..........value= 27 res = 0..........value= 39 res = 0..........value= 5F res = 0..........value= 3XYZ res = 0.......to base is 8..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 3 res = 0..........value= 95 res = 0..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 5F res = 0..........value= 3XYZ res = 0.......to base is 10..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 3 res = 0..........value= 95 res = 0..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 5F res = 0..........value= 3XYZ res = 0.......to base is 16..........value= 10 res = 2..........value= 27 res = 0..........val! ue= 39 res = 0..........value= 3 res = 0..........value= 95 res = 0..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 5F res = 0..........value= 3XYZ res = 0.......to base is 36..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 3 res = 0..........value= 95 res = 0..........value= 10 res = 2..........value= 27 res = 0..........value= 39 res = 0..........value= 5F res = 0..........value= 3XYZ res = 0 ...from base is 8.......to base is 2..........value= 10 res = 1000..........value= 27 res = 10111..........value= 39 res = 11..........value= 3 res = 11..........value= 95 res = 101..........value= 10 res = 1000..........value= 27 res = 10111..........value= 39 res = 11..........value= 5F res = 101..........value= 3XYZ res = 11.......to base is 8..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 3..........value= 3 res = 3..........value= 95 res = 5..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 3..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 10..........value= 10 res = 8..........value= 27 res = 23..........value= 39 res = 3..........value= 3 res = 3..........value= 95 res = 5..........value= 10 res = 8..........value= 27 res = 23..........value= 39 res = 3..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 16..........value= 10 res = 8..........value= 27 res = ! 17..........value= 39 res = 3..........value= 3 res = 3..........value= 95 res = 5..........value= 10 res = 8..........value= 27 res = 17..........value= 39 res = 3..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 36..........value= 10 res = 8..........value= 27 res = n..........value= 39 res = 3..........value= 3 res = 3..........value= 95 res = 5..........value= 10 res = 8..........value= 27 res = n..........value= 39 res = 3..........value= 5F res = 5..........value= 3XYZ res = 3 ...from base is 10.......to base is 2..........value= 10 res = 1010..........value= 27 res = 11011..........value= 39 res = 100111..........value= 3 res = 11..........value= 95 res = 1011111..........value= 10 res = 1010..........value= 27 res = 11011..........value= 39 res = 100111..........value= 5F res = 101..........value= 3XYZ res = 11.......to base is 8..........value= 10 res = 12..........value= 27 res = 33..........value= 39 res = 47..........value= 3 res = 3..........value= 95 res = 137..........value= 10 res = 12..........value= 27 res = 33..........value= 39 res = 47..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 10..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 3 res = 3..........value= 95 res = 95..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 16..........value= 10 res = a....! ......value= 27 res = 1b..........value= 39 res = 27..........value= 3 res = 3..........value= 95 res = 5f..........value= 10 res = a..........value= 27 res = 1b..........value= 39 res = 27..........value= 5F res = 5..........value= 3XYZ res = 3.......to base is 36..........value= 10 res = a..........value= 27 res = r..........value= 39 res = 13..........value= 3 res = 3..........value= 95 res = 2n..........value= 10 res = a..........value= 27 res = r..........value= 39 res = 13..........value= 5F res = 5..........value= 3XYZ res = 3 ...from base is 16.......to base is 2..........value= 10 res = 10000..........value= 27 res = 100111..........value= 39 res = 111001..........value= 3 res = 11..........value= 95 res = 10010101..........value= 10 res = 10000..........value= 27 res = 100111..........value= 39 res = 111001..........value= 5F res = 1011111..........value= 3XYZ res = 11.......to base is 8..........value= 10 res = 20..........value= 27 res = 47..........value= 39 res = 71..........value= 3 res = 3..........value= 95 res = 225..........value= 10 res = 20..........value= 27 res = 47..........value= 39 res = 71..........value= 5F res = 137..........value= 3XYZ res = 3.......to base is 10..........value= 10 res = 16..........value= 27 res = 39..........value= 39 res = 57..........value= 3 res = 3..........value= 95 res = 149..........value= 10 res = 16..........value= 27 res = 39..........value= 39 res = 57..........value= 5F res = 95..........value= 3XYZ res = 3.......to base is 16..........value= 1! 0 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 3 res = 3..........value= 95 res = 95..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 5F res = 5f..........value= 3XYZ res = 3.......to base is 36..........value= 10 res = g..........value= 27 res = 13..........value= 39 res = 1l..........value= 3 res = 3..........value= 95 res = 45..........value= 10 res = g..........value= 27 res = 13..........value= 39 res = 1l..........value= 5F res = 2n..........value= 3XYZ res = 3 ...from base is 36.......to base is 2..........value= 10 res = 100100..........value= 27 res = 1001111..........value= 39 res = 1110101..........value= 3 res = 11..........value= 95 res = 101001001..........value= 10 res = 100100..........value= 27 res = 1001111..........value= 39 res = 1110101..........value= 5F res = 11000011..........value= 3XYZ res = 101100111010111011.......to base is 8..........value= 10 res = 44..........value= 27 res = 117..........value= 39 res = 165..........value= 3 res = 3..........value= 95 res = 511..........value= 10 res = 44..........value= 27 res = 117..........value= 39 res = 165..........value= 5F res = 303..........value= 3XYZ res = 547273.......to base is 10..........value= 10 res = 36..........value= 27 res = 79..........value= 39 res = 117..........value= 3 res = 3..........value= 95 res = 329..........value= 10 res = 36..........value= 27 res = 79..........value= 39 res = 117..........value= 5F res = 195..........value= 3XYZ res = 183! 995.......to base is 16..........value= 10 res = 24..........value= 27 res = 4f..........value= 39 res = 75..........value= 3 res = 3..........value= 95 res = 149..........value= 10 res = 24..........value= 27 res = 4f..........value= 39 res = 75..........value= 5F res = c3..........value= 3XYZ res = 2cebb.......to base is 36..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 3 res = 3..........value= 95 res = 95..........value= 10 res = 10..........value= 27 res = 27..........value= 39 res = 39..........value= 5F res = 5f..........value= 3XYZ res = 3xyz http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/decbin_error.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/decbin_error.phpt +++ php-src/ext/standard/tests/math/decbin_error.phpt --TEST-- Test decbin() - wrong params --FILE-- <?php decbin(); decbin(23,2,true); ?> --EXPECTF-- Warning: decbin() expects exactly 1 parameter, 0 given in %s on line %d Warning: decbin() expects exactly 1 parameter, 3 given in %s on line %d http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/math/constants_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/standard/tests/math/constants_basic.phpt +++ php-src/ext/standard/tests/math/constants_basic.phpt --TEST-- Test for pre-defined math constants --INI-- precision=14 --FILE-- <?php echo "M_E= "; var_dump(M_E); echo "M_LOG2E= "; var_dump(M_LOG2E); echo "M_LOG10E= "; var_dump(M_LOG10E); echo "M_LN2= "; var_dump(M_LN2); echo "M_LN10= "; var_dump(M_LN10); echo "M_PI= "; var_dump(M_PI); echo "M_PI_2= "; var_dump(M_PI_2); echo "M_PI_4= "; var_dump(M_PI_4); echo "M_1_PI= "; var_dump(M_1_PI); echo "M_2_PI= "; var_dump(M_2_PI); echo "M_SQRTPI= "; var_dump(M_SQRTPI); echo "M_2_SQRTPI= "; var_dump(M_2_SQRTPI); echo "M_LNPI= "; var_dump(M_LNPI); echo "M_EULER= "; var_dump(M_EULER); echo "M_SQRT2= "; var_dump(M_SQRT2); echo "M_SQRT1_2= "; var_dump(M_SQRT1_2); echo "M_SQRT3= "; var_dump(M_SQRT3); echo "INF= "; var_dump(INF); echo "NAN= "; var_dump(NAN); ?> --EXPECT-- M_E= float(2.718281828459) M_LOG2E= float(1.442695040889) M_LOG10E= float(0.43429448190325) M_LN2= float(0.69314718055995) M_LN10= float(2.302585092994) M_PI= float(3.1415926535898) M_PI_2= float(1.5707963267949) M_PI_4= float(0.78539816339745) M_1_PI= float(0.31830988618379) M_2_PI= float(0.63661977236758) M_SQRTPI= float(1.7724538509055) M_2_SQRTPI= float(1.1283791670955) M_LNPI= float(1.1447298858494) M_EULER= float(0.57721566490153) M_SQRT2= float(1.4142135623731) M_SQRT1_2= float(0.70710678118655) M_SQRT3= float(1.7320508075689) INF= float(INF) NAN= float(NAN)
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php