nonDeserializableProvider()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 12
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 12
c 0
b 0
f 0
rs 9.4285
nc 1
cc 1
eloc 7
nop 0
1
<?php
2
3
namespace PPP\DataModel\Deserializers;
4
5
use PPP\DataModel\DeserializerFactory;
6
use PPP\DataModel\ResourceListNode;
7
use PPP\DataModel\StringResourceNode;
8
use PPP\DataModel\TripleNode;
9
use PPP\DataModel\UnionNode;
10
11
/**
12
 * @covers PPP\DataModel\Deserializers\TripleNodeDeserializer
13
 *
14
 * @licence AGPLv3+
15
 * @author Thomas Pellissier Tanon
16
 */
17
class TripleNodeDeserializerTest extends DeserializerBaseTest {
18
19
	/**
20
	 * @see DeserializerBaseTest::buildDeserializer
21
	 */
22
	public function buildDeserializer() {
23
		return new TripleNodeDeserializer(new DeserializerFactory());
24
	}
25
26
	/**
27
	 * @see DeserializerBaseTest::deserializableProvider
28
	 */
29
	public function deserializableProvider() {
30
		return array(
31
			array(
32
				array(
33
					'type' => 'triple',
34
					'subject' => array('type' => 'resource', 'value' => 's'),
35
					'predicate' => array('type' => 'resource', 'value' => 'p'),
36
					'object' => array('type' => 'resource', 'value' => 'o')
37
				)
38
			)
39
		);
40
	}
41
42
	/**
43
	 * @see DeserializerBaseTest::nonDeserializableProvider
44
	 */
45
	public function nonDeserializableProvider() {
46
		return array(
47
			array(
48
				42
49
			),
50
			array(
51
				array(
52
					'type' => 'foo'
53
				)
54
			)
55
		);
56
	}
57
58
	/**
59
	 * @see DeserializerBaseTest::deserializationProvider
60
	 */
61
	public function deserializationProvider() {
62
		return array(
63
			array(
64
				new TripleNode(
65
					new ResourceListNode(array(new StringResourceNode('s'))),
66
					new ResourceListNode(array(new StringResourceNode('p'))),
67
					new ResourceListNode(array(new StringResourceNode('o')))
68
				),
69
				array(
70
					'type' => 'triple',
71
					'subject' => array('type'=> 'list', 'list' => array(array('type' => 'resource', 'value' => 's'))),
72
					'predicate' => array('type' => 'resource', 'value' => 'p'),
73
					'object' => array('type' => 'resource', 'value' => 'o')
74
				)
75
			),
76
			array(
77
				new UnionNode(array(
78
					new TripleNode(
79
						new ResourceListNode(array(new StringResourceNode('s'))),
80
						new ResourceListNode(array(new StringResourceNode('p'))),
81
						new ResourceListNode(array(new StringResourceNode('o')))
82
					),
83
					new TripleNode(
84
						new ResourceListNode(array(new StringResourceNode('o'))),
85
						new ResourceListNode(array(new StringResourceNode('r'))),
86
						new ResourceListNode(array(new StringResourceNode('s')))
87
					)
88
				)),
89
				array(
90
					'type' => 'triple',
91
					'subject' => array('type'=> 'list', 'list' => array(array('type' => 'resource', 'value' => 's'))),
92
					'predicate' => array('type' => 'resource', 'value' => 'p'),
93
					'inverse-predicate' => array('type' => 'resource', 'value' => 'r'),
94
					'object' => array('type' => 'resource', 'value' => 'o')
95
				)
96
			)
97
		);
98
	}
99
}
100