Completed
Push — master ( 0a0c4a...11fa4c )
by Adrien
11:33
created

ExpenseClaimTest::testUserRelation()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 18
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 10
nc 1
nop 0
dl 0
loc 18
rs 9.9332
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace ApplicationTest\Model;
6
7
use Application\Model\AccountingDocument;
8
use Application\Model\ExpenseClaim;
9
use Application\Model\Transaction;
10
use PHPUnit\Framework\TestCase;
11
12
class ExpenseClaimTest extends TestCase
13
{
14
    public function testDocumentRelation(): void
15
    {
16
        $document = new AccountingDocument();
17
18
        $expense = new ExpenseClaim();
19
        $document->setExpenseClaim($expense);
20
21
        $expense2 = new ExpenseClaim();
22
23
        self::assertCount(1, $expense->getAccountingDocuments());
24
25
        $document->setExpenseClaim($expense2);
26
27
        self::assertCount(0, $expense->getAccountingDocuments());
28
        self::assertCount(1, $expense2->getAccountingDocuments());
29
    }
30
31
    public function testTransactionRelation(): void
32
    {
33
        $transaction = new Transaction();
34
        $transaction2 = new Transaction();
35
36
        $expense = new ExpenseClaim();
37
38
        $transaction->setExpenseClaim($expense);
39
        $transaction2->setExpenseClaim($expense);
40
41
        self::assertCount(2, $expense->getTransactions());
42
43
        $expense2 = new ExpenseClaim();
44
45
        $transaction2->setExpenseClaim($expense2);
46
47
        self::assertCount(1, $expense->getTransactions());
48
        self::assertCount(1, $expense2->getTransactions());
49
    }
50
}
51