Passed
Push — master ( 5b00d5...84fad3 )
by Sergey
49s queued 13s
created

GetStreetTest   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 13
c 1
b 0
f 0
dl 0
loc 38
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A assertIsStreet() 0 6 1
A setUp() 0 4 1
A testGetStreet() 0 5 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace SergeyNezbritskiy\Tests\Integration\Models\Address;
6
7
use PHPUnit\Framework\TestCase;
8
use SergeyNezbritskiy\NovaPoshta\Models\Address;
9
use SergeyNezbritskiy\NovaPoshta\NovaPoshtaApiException;
10
use SergeyNezbritskiy\NovaPoshta\Tests\UsesConnectionTrait;
11
12
class GetStreetTest extends TestCase
13
{
14
    use UsesConnectionTrait;
15
16
    /**
17
     * Kharkiv city ref
18
     */
19
    private const CITY_REF = 'db5c88e0-391c-11dd-90d9-001a92567626';
20
    private Address $model;
21
22
    protected function setUp(): void
23
    {
24
        $connection = $this->getConnection();
25
        $this->model = new Address($connection);
26
    }
27
28
29
    /**
30
     * @return void
31
     * @throws NovaPoshtaApiException
32
     */
33
    public function testGetStreet(): void
34
    {
35
        $actualResult = $this->model->getStreet(self::CITY_REF, 'Черниш', 1, 10);
36
        $this->assertIsArray($actualResult);
37
        $this->assertIsStreet(array_shift($actualResult));
38
    }
39
40
    /**
41
     * @param array $street
42
     * @return void
43
     */
44
    private function assertIsStreet(array $street): void
45
    {
46
        $this->assertArrayHasKey('Description', $street);
47
        $this->assertArrayHasKey('Ref', $street);
48
        $this->assertArrayHasKey('StreetsTypeRef', $street);
49
        $this->assertArrayHasKey('StreetsType', $street);
50
    }
51
}
52