Completed
Push — master ( 1a4395...f53a1c )
by Andreu
04:50
created

DecimalSubTest::testInfiniteInfiniteSub()   B

Complexity

Conditions 3
Paths 4

Size

Total Lines 24
Code Lines 17

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 24
rs 8.9713
cc 3
eloc 17
nc 4
nop 0
1
<?php
2
3
use Litipk\BigNumbers\Decimal as Decimal;
4
use PHPUnit\Framework\TestCase;
5
6
7
date_default_timezone_set('UTC');
8
9
10
class DecimalSubTest extends TestCase
11
{
12
    public function testZeroSub()
13
    {
14
        $one  = Decimal::fromInteger(1);
15
        $zero = Decimal::fromInteger(0);
16
17
        $this->assertTrue($one->sub($zero)->equals($one));
18
19
        $this->assertTrue($zero->sub($one)->equals($one->additiveInverse()));
20
        $this->assertTrue($zero->sub($one)->equals(Decimal::fromInteger(-1)));
21
        $this->assertTrue($zero->sub($one)->isNegative());
22
    }
23
24
    public function testBasicCase()
25
    {
26
        $one = Decimal::fromInteger(1);
27
        $two = Decimal::fromInteger(2);
28
29
        $this->assertTrue($one->sub($two)->equals(Decimal::fromInteger(-1)));
30
        $this->assertTrue($two->sub($one)->equals($one));
31
32
        $this->assertTrue($one->sub($one)->isZero());
33
    }
34
}
35