Completed
Push — master ( 4c1af7...741b75 )
by Ruud
21:53
created

TranslationTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 16
rs 9.7333
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Kunstmaan\TranslationBundle\Tests\Entity;
4
5
use Doctrine\Common\Collections\ArrayCollection;
6
use Kunstmaan\TranslatorBundle\Entity\Translation;
7
use Kunstmaan\TranslatorBundle\Model\TextWithLocale;
8
use PHPUnit\Framework\TestCase;
9
10
/**
11
 * Class TranslationTest
12
 */
13
class TranslationTest extends TestCase
14
{
15
    const TEST_DATA_ID = 666;
16
    const TEST_DATA_FILE = 'messages.en.yml';
17
    const TEST_DATA_KEYWORD = 'hello.world';
18
    const TEST_DATA_TEXT = 'hello world';
19
    const TEST_DATA_DOMAIN = 'messages';
20
21
    protected $object;
22
23
    public function setUp()
24
    {
25
        $this->object = new Translation();
26
27
        $this->object
28
            ->setId(self::TEST_DATA_ID)
29
            ->setCreatedAt(new \DateTime())
30
            ->setUpdatedAt(new \DateTime())
31
            ->setFile(self::TEST_DATA_FILE)
32
            ->setKeyword(self::TEST_DATA_KEYWORD)
33
            ->setDomain(self::TEST_DATA_DOMAIN)
34
            ->setText(self::TEST_DATA_TEXT)
35
        ;
36
37
        $this->object->preUpdate();
38
    }
39
40
    public function testGetSet()
41
    {
42
        $this->assertEquals(self::TEST_DATA_ID, $this->object->getId());
43
        $this->assertInstanceOf(\DateTime::class, $this->object->getCreatedAt());
44
        $this->assertInstanceOf(\DateTime::class, $this->object->getUpdatedAt());
45
        $this->assertEquals(self::TEST_DATA_FILE, $this->object->getFile());
46
        $this->assertEquals(Translation::FLAG_UPDATED, $this->object->getFlag());
47
48
        $this->object->setFlag(Translation::FLAG_NEW);
49
        $this->assertEquals(Translation::FLAG_NEW, $this->object->getFlag());
50
    }
51
52
    public function testGetTranslationModel()
53
    {
54
        $translationModel = $this->object->getTranslationModel(self::TEST_DATA_ID);
55
        $this->assertInstanceOf(\Kunstmaan\TranslatorBundle\Model\Translation::class, $translationModel);
56
        $this->assertEquals(self::TEST_DATA_KEYWORD, $translationModel->getKeyword());
57
        $this->assertEquals(self::TEST_DATA_DOMAIN, $translationModel->getDomain());
58
59
        $texts = $translationModel->getTexts();
60
        $this->assertInstanceOf(ArrayCollection::class, $texts);
61
        $this->assertInstanceOf(TextWithLocale::class, $texts->first());
62
    }
63
64
    public function testGetStatus()
65
    {
66
        $this->assertFalse($this->object->isDisabled());
67
68
        $this->object->setStatus(Translation::STATUS_DISABLED);
69
        $this->assertTrue($this->object->isDisabled());
70
71
        $this->object->setStatus(Translation::STATUS_DEPRECATED);
72
        $this->assertTrue($this->object->isDeprecated());
73
    }
74
}
75