Completed
Push — master ( b9f967...7a222d )
by Andreu
9s
created

DecimalIsIntegerTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 56
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 2
c 1
b 0
f 1
lcom 0
cbo 2
dl 0
loc 56
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
B testIntegers() 0 34 1
A testNotIntegers() 0 18 1
1
<?php
2
3
use Litipk\BigNumbers\Decimal as Decimal;
4
5
6
date_default_timezone_set('UTC');
7
8
9
class DecimalIsIntegerTest extends PHPUnit_Framework_TestCase
10
{
11
    public function testIntegers()
12
    {
13
        $this->assertTrue(Decimal::fromInteger(-200)->isInteger());
14
        $this->assertTrue(Decimal::fromInteger(-2)->isInteger());
15
        $this->assertTrue(Decimal::fromInteger(-1)->isInteger());
16
        $this->assertTrue(Decimal::fromInteger(0)->isInteger());
17
        $this->assertTrue(Decimal::fromInteger(1)->isInteger());
18
        $this->assertTrue(Decimal::fromInteger(2)->isInteger());
19
        $this->assertTrue(Decimal::fromInteger(200)->isInteger());
20
21
        $this->assertTrue(Decimal::fromString("-200")->isInteger());
22
        $this->assertTrue(Decimal::fromString("-2")->isInteger());
23
        $this->assertTrue(Decimal::fromString("-1")->isInteger());
24
        $this->assertTrue(Decimal::fromString("0")->isInteger());
25
        $this->assertTrue(Decimal::fromString("1")->isInteger());
26
        $this->assertTrue(Decimal::fromString("2")->isInteger());
27
        $this->assertTrue(Decimal::fromString("200")->isInteger());
28
29
        $this->assertTrue(Decimal::fromString("-200.000")->isInteger());
30
        $this->assertTrue(Decimal::fromString("-2.000")->isInteger());
31
        $this->assertTrue(Decimal::fromString("-1.000")->isInteger());
32
        $this->assertTrue(Decimal::fromString("0.000")->isInteger());
33
        $this->assertTrue(Decimal::fromString("1.000")->isInteger());
34
        $this->assertTrue(Decimal::fromString("2.000")->isInteger());
35
        $this->assertTrue(Decimal::fromString("200.000")->isInteger());
36
37
        $this->assertTrue(Decimal::fromFloat(-200.0)->isInteger());
38
        $this->assertTrue(Decimal::fromFloat(-2.0)->isInteger());
39
        $this->assertTrue(Decimal::fromFloat(-1.0)->isInteger());
40
        $this->assertTrue(Decimal::fromFloat(0.0)->isInteger());
41
        $this->assertTrue(Decimal::fromFloat(1.0)->isInteger());
42
        $this->assertTrue(Decimal::fromFloat(2.0)->isInteger());
43
        $this->assertTrue(Decimal::fromFloat(200.0)->isInteger());
44
    }
45
46
    public function testNotIntegers()
47
    {
48
        $this->assertFalse(Decimal::fromString("-200.001")->isInteger());
49
        $this->assertFalse(Decimal::fromString("-2.001")->isInteger());
50
        $this->assertFalse(Decimal::fromString("-1.001")->isInteger());
51
        $this->assertFalse(Decimal::fromString("0.001")->isInteger());
52
        $this->assertFalse(Decimal::fromString("1.001")->isInteger());
53
        $this->assertFalse(Decimal::fromString("2.001")->isInteger());
54
        $this->assertFalse(Decimal::fromString("200.001")->isInteger());
55
56
        $this->assertFalse(Decimal::fromFloat(-200.001)->isInteger());
57
        $this->assertFalse(Decimal::fromFloat(-2.001)->isInteger());
58
        $this->assertFalse(Decimal::fromFloat(-1.001)->isInteger());
59
        $this->assertFalse(Decimal::fromFloat(0.001)->isInteger());
60
        $this->assertFalse(Decimal::fromFloat(1.001)->isInteger());
61
        $this->assertFalse(Decimal::fromFloat(2.001)->isInteger());
62
        $this->assertFalse(Decimal::fromFloat(200.001)->isInteger());
63
    }
64
}
65