Skip to content

Commit cd36614

Browse files
committed
Add tests for isPositive() and isNegative()
1 parent 49cd96e commit cd36614

File tree

2 files changed

+110
-0
lines changed

2 files changed

+110
-0
lines changed

tests/php7/methods/isNegative.phpt

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
--TEST--
2+
Decimal::isNegative
3+
--SKIPIF--
4+
<?php
5+
if (!extension_loaded("decimal")) echo "skip";
6+
?>
7+
--FILE--
8+
<?php
9+
use Decimal\Decimal;
10+
11+
/**
12+
* Shortcut to construct a new decimal.
13+
*/
14+
function decimal(...$args) { return new Decimal(...$args); }
15+
16+
$tests = [
17+
/* Number, expected */
18+
19+
[ "1E-50", false],
20+
["-1E-50", true],
21+
22+
["0", false],
23+
["-0", true],
24+
[1, false],
25+
[2, false],
26+
[3, false],
27+
28+
[-1, true],
29+
[-2, true],
30+
[-3, true],
31+
32+
["1.5", false],
33+
["2.5", false],
34+
["3.5", false],
35+
36+
["-1.5", true],
37+
["-2.5", true],
38+
["-3.5", true],
39+
40+
[ "NAN", false],
41+
[ "INF", false],
42+
["-INF", true],
43+
];
44+
45+
foreach ($tests as $pair) {
46+
$number = $pair[0];
47+
$expect = $pair[1];
48+
$result = decimal($number)->isNegative();
49+
50+
if ((string) $result !== (string) $expect) {
51+
print_r(compact("number", "result", "expect"));
52+
}
53+
}
54+
?>
55+
--EXPECT--

tests/php7/methods/isPositive.phpt

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
--TEST--
2+
Decimal::isPositive
3+
--SKIPIF--
4+
<?php
5+
if (!extension_loaded("decimal")) echo "skip";
6+
?>
7+
--FILE--
8+
<?php
9+
use Decimal\Decimal;
10+
11+
/**
12+
* Shortcut to construct a new decimal.
13+
*/
14+
function decimal(...$args) { return new Decimal(...$args); }
15+
16+
$tests = [
17+
/* Number, expected */
18+
19+
[ "1E-50", true],
20+
["-1E-50", false],
21+
22+
["0", true],
23+
["-0", false],
24+
[1, true],
25+
[2, true],
26+
[3, true],
27+
28+
[-1, false],
29+
[-2, false],
30+
[-3, false],
31+
32+
["1.5", true],
33+
["2.5", true],
34+
["3.5", true],
35+
36+
["-1.5", false],
37+
["-2.5", false],
38+
["-3.5", false],
39+
40+
[ "NAN", true],
41+
[ "INF", true],
42+
["-INF", false],
43+
];
44+
45+
foreach ($tests as $pair) {
46+
$number = $pair[0];
47+
$expect = $pair[1];
48+
$result = decimal($number)->isPositive();
49+
50+
if ((string) $result !== (string) $expect) {
51+
print_r(compact("number", "result", "expect"));
52+
}
53+
}
54+
?>
55+
--EXPECT--

0 commit comments

Comments
 (0)