Completed
Push — master ( 946aec...bc2207 )
by mw
03:21
created

PropertyAnnotatorTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 43

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 43
rs 9.232
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace SMW\ApprovedRevs\Tests;
4
5
use SMW\ApprovedRevs\PropertyAnnotator;
6
use SMW\DIProperty;
7
use SMW\DIWikiPage;
8
9
/**
10
 * @covers \SMW\ApprovedRevs\PropertyAnnotator
11
 * @group semantic-approved-revs
12
 *
13
 * @license GNU GPL v2+
14
 * @since 1.0
15
 */
16
class PropertyAnnotatorTest extends \PHPUnit_Framework_TestCase {
17
18
	private $servicesFactory;
19
	private $logger;
20
21
	protected function setUp() {
22
		parent::setUp();
23
24
		$approvedByPropertyAnnotator = $this->getMockBuilder( '\SMW\ApprovedRevs\PropertyAnnotators\ApprovedByPropertyAnnotator' )
25
			->disableOriginalConstructor()
26
			->getMock();
27
28
		$approvedStatusPropertyAnnotator = $this->getMockBuilder( '\SMW\ApprovedRevs\PropertyAnnotators\ApprovedStatusPropertyAnnotator' )
29
			->disableOriginalConstructor()
30
			->getMock();
31
32
		$approvedDatePropertyAnnotator = $this->getMockBuilder( '\SMW\ApprovedRevs\PropertyAnnotators\ApprovedDatePropertyAnnotator' )
33
			->disableOriginalConstructor()
34
			->getMock();
35
36
		$approvedRevPropertyAnnotator = $this->getMockBuilder( '\SMW\ApprovedRevs\PropertyAnnotators\ApprovedRevPropertyAnnotator' )
37
			->disableOriginalConstructor()
38
			->getMock();
39
40
		$this->servicesFactory = $this->getMockBuilder( '\SMW\ApprovedRevs\ServicesFactory' )
41
			->disableOriginalConstructor()
42
			->getMock();
43
44
		$this->servicesFactory->expects( $this->any() )
45
			->method( 'newApprovedByPropertyAnnotator' )
46
			->will( $this->returnValue( $approvedByPropertyAnnotator ) );
47
48
		$this->servicesFactory->expects( $this->any() )
49
			->method( 'newApprovedStatusPropertyAnnotator' )
50
			->will( $this->returnValue( $approvedStatusPropertyAnnotator ) );
51
52
		$this->servicesFactory->expects( $this->any() )
53
			->method( 'newApprovedDatePropertyAnnotator' )
54
			->will( $this->returnValue( $approvedDatePropertyAnnotator ) );
55
56
		$this->servicesFactory->expects( $this->any() )
57
			->method( 'newApprovedRevPropertyAnnotator' )
58
			->will( $this->returnValue( $approvedRevPropertyAnnotator ) );
59
60
		$this->logger = $this->getMockBuilder( '\Psr\Log\NullLogger' )
61
			->disableOriginalConstructor()
62
			->getMock();
63
	}
64
65
	public function testCanConstruct() {
66
67
		$this->assertInstanceOf(
68
			PropertyAnnotator::class,
69
			new PropertyAnnotator( $this->servicesFactory )
70
		);
71
	}
72
73
	public function testAddAnnotation() {
74
75
		$semanticData = $this->getMockBuilder( '\SMW\SemanticData' )
76
			->disableOriginalConstructor()
77
			->getMock();
78
79
		$semanticData->expects( $this->once() )
80
			->method( 'getSubject' )
81
			->will( $this->returnValue( DIWikiPage::newFromText( 'Foo' ) ) );
82
83
		$annotator = new PropertyAnnotator(
84
			$this->servicesFactory
85
		);
86
87
		$annotator->setLogger( $this->logger );
88
		$annotator->addAnnotation( $semanticData );
89
	}
90
91
}
92