GetCounterpartiesTest::assertIsCounterparty()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 7
dl 0
loc 9
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace SergeyNezbritskiy\NovaPoshta\Tests\Integration\Models\Counterparty;
6
7
use Exception;
8
use PHPUnit\Framework\TestCase;
9
use SergeyNezbritskiy\NovaPoshta\Models\Counterparty;
10
use SergeyNezbritskiy\NovaPoshta\Tests\UsesConnectionTrait;
11
12
class GetCounterpartiesTest extends TestCase
13
{
14
    use UsesConnectionTrait;
15
16
    private Counterparty $model;
17
18
    protected function setUp(): void
19
    {
20
        $connection = $this->getConnection();
21
        $this->model = new Counterparty($connection);
22
    }
23
24
    /**
25
     * @return void
26
     * @throws Exception
27
     */
28
    public function testCounterpartyPrivatePersonCrud(): void
29
    {
30
        $actualResult = $this->model->getCounterparties(Counterparty::COUNTERPARTY_PROPERTY_SENDER);
31
        $this->assertNotEmpty($actualResult);
32
        $this->assertIsCounterparty(array_shift($actualResult));
33
    }
34
35
    /**
36
     * @param array $counterparty
37
     * @return void
38
     */
39
    private function assertIsCounterparty(array $counterparty): void
40
    {
41
        $this->assertArrayHasKey('Ref', $counterparty);
42
        $this->assertArrayHasKey('Description', $counterparty);
43
        $this->assertArrayHasKey('FirstName', $counterparty);
44
        $this->assertArrayHasKey('LastName', $counterparty);
45
        $this->assertArrayHasKey('Counterparty', $counterparty);
46
        $this->assertArrayHasKey('EDRPOU', $counterparty);
47
        $this->assertArrayHasKey('CounterpartyType', $counterparty);
48
    }
49
}
50