ResourceTest   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 1
eloc 18
c 1
b 0
f 0
dl 0
loc 35
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A testConstruct() 0 18 1
1
<?php
2
3
namespace Lifeboat\Tests\Resource;
4
5
use Lifeboat\App;
6
use Lifeboat\Tests\TestCase;
7
8
class ResourceTest extends TestCase {
9
10
    private $mock_resource_data = [
11
        'bool_test'     => '1',
12
        'int_test'      => '8',
13
        'float_test'    => '8.5',
14
        'date_test'     => '2021-10-05 00:13:25',
15
        'date_test_neg' => '-'
16
    ];
17
18
    /**
19
     * @test
20
     * @covers \Lifeboat\Resource\ApiResource::__construct
21
     * @covers \Lifeboat\Resource\ApiResource::setClient
22
     * @covers \Lifeboat\Resource\ApiResource::getClient
23
     * @covers \lifeboat_date_formatter()
24
     */
25
    public function testConstruct()
26
    {
27
        $mock = new MockResource($this->getMockClient(), $this->mock_resource_data);
28
29
        $this->assertEquals($this->getMockClient(), $mock->getClient());
30
31
        // Test the casting
32
        $this->assertEquals(true, $mock->bool_test);
33
        $this->assertEquals(8, $mock->int_test);
34
        $this->assertEquals(8.5, $mock->float_test);
35
        $this->assertEquals(null, $mock->date_test_neg);
36
37
        $date = new \DateTime('2021-10-05 00:13:25 CET');
38
        $this->assertEquals($date->getTimestamp(), $mock->date_test->getTimestamp());
39
40
        $client_2 = $this->createMock(App::class);
41
        $mock->setClient($client_2);
42
        $this->assertEquals($client_2, $mock->getClient());
43
    }
44
45
}
46