issue60Test   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 2
c 0
b 0
f 0
lcom 0
cbo 2
dl 0
loc 20
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A test_that_fromFloat_division_does_not_calculate_invalid_log10_avoiding_div_zero() 0 8 1
A test_that_fromFloat_less_than_1_still_correct() 0 8 1
1
<?php
2
3
declare(strict_types=1);
4
5
use Litipk\BigNumbers\Decimal;
6
use PHPUnit\Framework\TestCase;
7
8
class issue60Test extends TestCase
9
{
10
    public function test_that_fromFloat_division_does_not_calculate_invalid_log10_avoiding_div_zero()
11
    {
12
        $value = Decimal::fromFloat(1.001);
13
        $divisor = Decimal::fromFloat(20);
14
15
        $this->assertEquals(0.05005, $value->div($divisor)->asFloat());
16
        $this->assertEquals(0.000434077479319, $value->log10()->asFloat());
17
    }
18
19
    public function test_that_fromFloat_less_than_1_still_correct()
20
    {
21
        $value = Decimal::fromFloat(0.175);
22
        $divisor = Decimal::fromFloat(20);
23
24
        $this->assertEquals(0.009, $value->div($divisor)->asFloat());
25
        $this->assertEquals(-0.7569, $value->log10()->asFloat());
26
    }
27
}
28