ModuleRequestDeserializerTest::testDeserialize()   B
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 44
Code Lines 34

Duplication

Lines 0
Ratio 0 %

Importance

Changes 3
Bugs 0 Features 2
Metric Value
c 3
b 0
f 2
dl 0
loc 44
rs 8.8571
cc 1
eloc 34
nc 1
nop 0
1
<?php
2
3
namespace PPP\Module\DataModel\Serializers;
4
5
use PPP\DataModel\Deserializers\MissingNodeDeserializer;
6
use PPP\DataModel\MissingNode;
7
use PPP\Module\DataModel\Deserializers\ModuleRequestDeserializer;
8
use PPP\Module\DataModel\ModuleRequest;
9
10
/**
11
 * @covers PPP\Module\DataModel\Serializers\ModuleResponseSerializer
12
 *
13
 * @licence MIT
14
 * @author Thomas Pellissier Tanon
15
 */
16
class ModuleRequestDeserializerTest extends \PHPUnit_Framework_TestCase {
17
18
	public function testDeserialize() {
19
		$deserializer = new ModuleRequestDeserializer(new MissingNodeDeserializer());
20
		$this->assertEquals(
21
			new ModuleRequest(
22
				'en',
23
				new MissingNode(),
24
				'a'
25
			),
26
			$deserializer->deserialize(array(
27
				'language' => 'en',
28
				'tree' => array('type' => 'missing'),
29
				'id' => 'a'
30
			))
31
		);
32
		$this->assertEquals(
33
			new ModuleRequest(
34
				'en',
35
				new MissingNode(),
36
				'a',
37
				array(),
38
				array('a')
39
			),
40
			$deserializer->deserialize(array(
41
				'language' => 'en',
42
				'tree' => array('type' => 'missing'),
43
				'id' => 'a',
44
				'trace' => array('a')
45
			))
46
		);
47
		$this->assertEquals(
48
			new ModuleRequest(
49
				'en',
50
				new MissingNode(),
51
				'a',
52
				array('accuracy' => 1)
53
			),
54
			$deserializer->deserialize(array(
55
				'language' => 'en',
56
				'tree' => array('type' => 'missing'),
57
				'id' => 'a',
58
				'measures' => array('accuracy' => 1)
59
			))
60
		);
61
	}
62
}
63