TaskTest::testHumanReadableJobName()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 13
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 8
nc 1
nop 0
dl 0
loc 13
rs 9.4285
c 0
b 0
f 0
1
<?php
2
3
namespace JobQueue\Tests\Domain\Task;
4
5
use JobQueue\Domain\Task\Profile;
6
use JobQueue\Domain\Task\Task;
7
use JobQueue\Tests\Domain\Job;
8
use PHPUnit\Framework\TestCase;
9
10
final class TaskTest extends TestCase
11
{
12
    public function testSerialization()
13
    {
14
        $task = new Task(
15
            new Profile('test'),
16
            new Job\DummyJob
17
        );
18
19
        $serializedTask = serialize($task);
20
        $this->assertTrue(is_string($serializedTask));
21
22
        $unserializedTask = unserialize($serializedTask);
23
        $this->assertInstanceOf(Task::class, $unserializedTask);
24
25
        $jsonSerializedTask = json_encode($unserializedTask);
26
        $this->assertTrue(is_string($jsonSerializedTask));
27
    }
28
29
    public function testHumanReadableJobName()
30
    {
31
        $task = new Task(
32
            new Profile('test'),
33
            new Job\DummyJob
34
        );
35
        $this->assertEquals('dummy', $task->getJobName(true));
36
37
        $complexNameJob = new Task(
38
            new Profile('test'),
39
            new Job\ComplexTOSnakeCASEJob
40
        );
41
        $this->assertEquals('complex_to_snake_case', $complexNameJob->getJobName(true));
42
    }
43
}
44