NodeSimplifierFactoryTest   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 11

Importance

Changes 4
Bugs 0 Features 2
Metric Value
wmc 1
c 4
b 0
f 2
lcom 0
cbo 11
dl 0
loc 24
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A testNewNodeSimplifier() 0 21 1
1
<?php
2
3
namespace PPP\Module\TreeSimplifier;
4
5
use PPP\DataModel\FirstNode;
6
use PPP\DataModel\IntersectionNode;
7
use PPP\DataModel\LastNode;
8
use PPP\DataModel\MissingNode;
9
use PPP\DataModel\ResourceListNode;
10
use PPP\DataModel\SortNode;
11
use PPP\DataModel\StringResourceNode;
12
use PPP\DataModel\TripleNode;
13
use PPP\DataModel\UnionNode;
14
15
/**
16
 * @covers PPP\Module\TreeSimplifier\NodeSimplifierFactory
17
 *
18
 * @licence MIT
19
 * @author Thomas Pellissier Tanon
20
 */
21
class NodeSimplifierFactoryTest extends \PHPUnit_Framework_TestCase {
22
23
	public function testNewNodeSimplifier() {
24
		$factory = new NodeSimplifierFactory();
25
26
		$this->assertEquals(
27
			new TripleNode(
28
				new ResourceListNode(),
29
				new FirstNode(new SortNode(new resourceListNode(), new StringResourceNode('foo'))),
30
				new MissingNode()
31
			),
32
			$factory->newNodeSimplifier()->simplify(new TripleNode(
33
				new UnionNode(array()),
34
				new FirstNode(new SortNode(
35
					new IntersectionNode(array(
36
						new LastNode(new ResourceListNode())
37
					)),
38
					new StringResourceNode('foo')
39
				)),
40
				new MissingNode()
41
			))
42
		);
43
	}
44
}
45