Completed
Push — master ( c5047e...3a177f )
by Gabriel
03:52
created

testGetMorphClassWithGenericManager()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 8
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 5
nc 1
nop 0
1
<?php
2
3
namespace Nip\Records\Tests\Relations;
4
5
use Nip\Records\Locator\ModelLocator;
6
use Nip\Records\Record;
7
use Nip\Records\RecordManager;
8
use Nip\Records\Relations\MorphMany;
9
use Nip\Records\Tests\AbstractTest;
10
11
/**
12
 * Class MorphManyTest
13
 * @package Nip\Records\Tests\Relations
14
 */
15
class MorphManyTest extends AbstractTest
16
{
17
18
    public function testGetMorphClassWithGenericManager()
19
    {
20
        $relation = new MorphMany();
21
        $manager = new RecordManager();
22
        $relation->setManager($manager);
23
24
        self::assertEquals('nip_records', $relation->getMorphValue());
25
    }
26
27
    public function testGetQuery()
28
    {
29
        ModelLocator::instance()->getConfiguration()->addNamespace('Nip\Records\Tests\Fixtures\Records');
30
31
        $relation = new MorphMany();
32
        $relation->setName('Books');
33
34
        $users = new RecordManager();
35
        $users->setPrimaryKey('id');
36
37
        $user = new Record();
38
        $user->id = 3;
39
        $user->setManager($users);
40
        $relation->setItem($user);
41
42
        self::assertEquals(
43
            "SELECT `books`.* FROM `books` WHERE parent_type = 'nip_records' AND `parent_id` = 3",
44
            $relation->getQuery()->getString()
45
        );
46
    }
47
}
48