com php-src: Add tests for bug #66872 and gmp_[rem]root : ext/gmp/tests/041.phpt ext/gmp/tests/bug66 872.phpt

From: Date: Tue, 11 Mar 2014 13:06:12 +0000
Subject: com php-src: Add tests for bug #66872 and gmp_[rem]root : ext/gmp/tests/041.phpt ext/gmp/tests/bug66 872.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-76441@lists.php.net to get a copy of this message
Commit: a117e6b93740e1c05ba8926c3f8938a9ad0cb631 Author: Nikita Popov <nikic@php.net> Tue, 11 Mar 2014 13:28:26 +0100 Parents: 03e9878c782480c6201102ac501a0640def06ccb Branches: PHP-5.6 master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=a117e6b93740e1c05ba8926c3f8938a9ad0cb631 Log: Add tests for bug #66872 and gmp_[rem]root Bugs: https://bugs.php.net/66872 Changed paths: A ext/gmp/tests/041.phpt A ext/gmp/tests/bug66872.phpt Diff: diff --git a/ext/gmp/tests/041.phpt b/ext/gmp/tests/041.phpt new file mode 100644 index 0000000..6e6d959 --- /dev/null +++ b/ext/gmp/tests/041..phpt @@ -0,0 +1,147 @@ +--TEST-- +gmp_root() and gmp_rootrem() basic tests +--SKIPIF-- +<?php if (!extension_loaded("gmp")) print "skip"; ?> +--FILE-- +<?php + +var_dump(gmp_root(1000, 3)); +var_dump(gmp_root(100, 3)); +var_dump(gmp_root(-100, 3)); + +var_dump(gmp_root(1000, 4)); +var_dump(gmp_root(100, 4)); +var_dump(gmp_root(-100, 4)); + +var_dump(gmp_root(0, 3)); +var_dump(gmp_root(100, 0)); +var_dump(gmp_root(100, -3)); + +var_dump(gmp_rootrem(1000, 3)); +var_dump(gmp_rootrem(100, 3)); +var_dump(gmp_rootrem(-100, 3)); + +var_dump(gmp_rootrem(1000, 4)); +var_dump(gmp_rootrem(100, 4)); +var_dump(gmp_rootrem(-100, 4)); + +var_dump(gmp_rootrem(0, 3)); +var_dump(gmp_rootrem(100, 0)); +var_dump(gmp_rootrem(100, -3)); + +?> +--EXPECTF-- +object(GMP)#%d (1) { + ["num"]=> + string(2) "10" +} +object(GMP)#%d (1) { + ["num"]=> + string(1) "4" +} +object(GMP)#%d (1) { + ["num"]=> + string(2) "-4" +} +object(GMP)#%d (1) { + ["num"]=> + string(1) "5" +} +object(GMP)#%d (1) { + ["num"]=> + string(1) "3" +} + +Warning: gmp_root(): Can't take even root of negative number in %s on line %d +bool(false) +object(GMP)#%d (1) { + ["num"]=> + string(1) "0" +} + +Warning: gmp_root(): The root must be positive in %s on line %d +bool(false) + +Warning: gmp_root(): The root must be positive in %s on line %d +bool(false) +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(2) "10" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "0" + } +} +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "4" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(2) "36" + } +} +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(2) "-4" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(2) "36" + } +} +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "5" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(3) "375" + } +} +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "3" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(2) "19" + } +} + +Warning: gmp_rootrem(): Can't take even root of negative number in %s on line %d +bool(false) +array(2) { + [0]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "0" + } + [1]=> + object(GMP)#%d (1) { + ["num"]=> + string(1) "0" + } +} + +Warning: gmp_rootrem(): The root must be positive in %s on line %d +bool(false) + +Warning: gmp_rootrem(): The root must be positive in %s on line %d +bool(false) diff --git a/ext/gmp/tests/bug66872.phpt b/ext/gmp/tests/bug66872.phpt new file mode 100644 index 0000000..715b7ba --- /dev/null +++ b/ext/gmp/tests/bug66872.phpt @@ -0,0 +1,11 @@ +--TEST-- +Bug #66872: Crash when passing string to gmp_testbit +--FILE-- +<?php + +var_dump(gmp_testbit("abc", 1)); + +?> +--EXPECTF-- +Warning: gmp_testbit(): Unable to convert variable to GMP - string is not an integer in %s on line %d +bool(false)

« previous php.cvs (#76441) next »