Skip to content

Commit 645d65f

Browse files
Matt Fickenweltling
Matt Ficken
authored andcommitted
Fixed bug #62068 Test bug - gmp_nextprime and 022
1 parent 778d69d commit 645d65f

File tree

4 files changed

+145
-2
lines changed

4 files changed

+145
-2
lines changed

ext/gmp/tests/022-win32.phpt

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
--TEST--
2+
gmp_gcdext() basic tests
3+
--SKIPIF--
4+
<?php if (!extension_loaded("gmp")) print "skip";
5+
if(substr(PHP_OS, 0, 3) != 'WIN' ) {
6+
die('skip windows only test');
7+
}
8+
?>
9+
--FILE--
10+
<?php
11+
12+
$n = gmp_init("34293864345");
13+
$n1 = gmp_init("23434293864345");
14+
15+
$a = array(
16+
array(123,45),
17+
array(4341,9734),
18+
array(23487,333),
19+
array(-234234,-123123),
20+
array(-100,-2234),
21+
array(345,"34587345"),
22+
array(345,"0"),
23+
array("345556456",345873),
24+
array("34545345556456","323432445873"),
25+
array($n, $n1),
26+
);
27+
28+
foreach ($a as $val) {
29+
$r = gmp_gcdext($val[0],$val[1]);
30+
var_dump(gmp_strval($r['g']));
31+
var_dump(gmp_strval($r['s']));
32+
var_dump(gmp_strval($r['t']));
33+
}
34+
35+
var_dump(gmp_gcdext($val[0],array()));
36+
var_dump(gmp_gcdext(array(),array()));
37+
var_dump(gmp_gcdext(array(),array(),1));
38+
var_dump(gmp_gcdext(array()));
39+
var_dump(gmp_gcdext());
40+
41+
echo "Done\n";
42+
?>
43+
--EXPECTF--
44+
string(1) "3"
45+
string(2) "41"
46+
string(4) "-112"
47+
string(1) "1"
48+
string(4) "-805"
49+
string(3) "359"
50+
string(1) "3"
51+
string(2) "32"
52+
string(5) "-2257"
53+
string(4) "3003"
54+
string(3) "-10"
55+
string(2) "19"
56+
string(1) "2"
57+
string(2) "67"
58+
string(2) "-3"
59+
string(2) "15"
60+
string(7) "-601519"
61+
string(1) "6"
62+
string(3) "345"
63+
string(1) "1"
64+
string(1) "0"
65+
string(1) "1"
66+
string(5) "84319"
67+
string(9) "-84241831"
68+
string(1) "1"
69+
string(12) "167180205823"
70+
string(15) "-17856272782919"
71+
string(3) "195"
72+
string(15) "-23387298979862"
73+
string(11) "34225091793"
74+
75+
Warning: gmp_gcdext(): Unable to convert variable to GMP - wrong type in %s on line %d
76+
bool(false)
77+
78+
Warning: gmp_gcdext(): Unable to convert variable to GMP - wrong type in %s on line %d
79+
bool(false)
80+
81+
Warning: gmp_gcdext() expects exactly 2 parameters, 3 given in %s on line %d
82+
NULL
83+
84+
Warning: gmp_gcdext() expects exactly 2 parameters, 1 given in %s on line %d
85+
NULL
86+
87+
Warning: gmp_gcdext() expects exactly 2 parameters, 0 given in %s on line %d
88+
NULL
89+
Done
90+

ext/gmp/tests/022.phpt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
--TEST--
22
gmp_gcdext() basic tests
33
--SKIPIF--
4-
<?php if (!extension_loaded("gmp")) print "skip"; ?>
4+
<?php if (!extension_loaded("gmp")) print "skip";
5+
if (substr(PHP_OS, 0, 3) == 'WIN') {
6+
die('skip.. only for Non Windows Systems');
7+
}
8+
?>
59
--FILE--
610
<?php
711

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
--TEST--
2+
gmp_nextprime()
3+
--SKIPIF--
4+
<?php if (!extension_loaded("gmp")) print "skip";
5+
if(substr(PHP_OS, 0, 3) != 'WIN' ) {
6+
die('skip windows only test');
7+
}
8+
?>
9+
--FILE--
10+
<?php
11+
12+
$n = gmp_nextprime(-1);
13+
var_dump(gmp_strval($n));
14+
$n = gmp_nextprime(0);
15+
var_dump(gmp_strval($n));
16+
$n = gmp_nextprime(-1000);
17+
var_dump(gmp_strval($n));
18+
$n = gmp_nextprime(1000);
19+
var_dump(gmp_strval($n));
20+
$n = gmp_nextprime(100000);
21+
var_dump(gmp_strval($n));
22+
$n = gmp_nextprime(array());
23+
var_dump(gmp_strval($n));
24+
$n = gmp_nextprime("");
25+
var_dump(gmp_strval($n));
26+
$n = gmp_nextprime(new stdclass());
27+
var_dump(gmp_strval($n));
28+
29+
echo "Done\n";
30+
?>
31+
--EXPECTF--
32+
string(1) "2"
33+
string(1) "2"
34+
string(4) "-997"
35+
string(4) "1009"
36+
string(6) "100003"
37+
38+
Warning: gmp_nextprime(): Unable to convert variable to GMP - wrong type in %s on line %d
39+
string(1) "0"
40+
string(1) "0"
41+
42+
Warning: gmp_nextprime(): Unable to convert variable to GMP - wrong type in %s on line %d
43+
string(1) "0"
44+
Done
45+

ext/gmp/tests/gmp_nextprime.phpt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
--TEST--
22
gmp_nextprime()
33
--SKIPIF--
4-
<?php if (!extension_loaded("gmp")) print "skip"; ?>
4+
<?php if (!extension_loaded("gmp")) print "skip";
5+
if (substr(PHP_OS, 0, 3) == 'WIN') {
6+
die('skip.. only for Non Windows Systems');
7+
}
8+
?>
59
--FILE--
610
<?php
711

0 commit comments

Comments
 (0)