Completed
Push — master ( bc2207...6c16a9 )
by mw
02:41
created

ApprovedRevsHandlerTest::testDoChangeRevision()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 18

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 18
rs 9.6666
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\ApprovedRevsHandler;
6
7
/**
8
 * @covers \SMW\ApprovedRevs\ApprovedRevsHandler
9
 * @group semantic-approved-revs
10
 *
11
 * @license GNU GPL v2+
12
 * @since 1.0
13
 *
14
 * @author mwjames
15
 */
16
class ApprovedRevsHandlerTest extends \PHPUnit_Framework_TestCase {
17
18
	private $approvedRevsFacade;
19
20
	protected function setUp() {
21
22
		$this->approvedRevsFacade = $this->getMockBuilder( '\SMW\ApprovedRevs\ApprovedRevsFacade' )
23
			->disableOriginalConstructor()
24
			->setMethods( [ 'getApprovedRevID' ] )
25
			->getMock();
26
	}
27
28
	public function testCanConstruct() {
29
30
		$this->assertInstanceOf(
31
			ApprovedRevsHandler::class,
32
			new ApprovedRevsHandler( $this->approvedRevsFacade )
33
		);
34
	}
35
36
	public function testIsApprovedUpdate_True() {
37
38
		$this->approvedRevsFacade->expects( $this->once() )
39
			->method( 'getApprovedRevID' )
40
			->will( $this->returnValue( 42 ) );
41
42
		$title = $this->getMockBuilder( '\Title' )
43
			->disableOriginalConstructor()
44
			->getMock();
45
46
		$instance = new ApprovedRevsHandler(
47
			$this->approvedRevsFacade
48
		);
49
50
		$this->assertTrue(
51
			$instance->isApprovedUpdate( $title, 42 )
52
		);
53
	}
54
55
	public function testIsApprovedUpdate_False() {
56
57
		$this->approvedRevsFacade->expects( $this->once() )
58
			->method( 'getApprovedRevID' )
59
			->will( $this->returnValue( 42 ) );
60
61
		$title = $this->getMockBuilder( '\Title' )
62
			->disableOriginalConstructor()
63
			->getMock();
64
65
		$instance = new ApprovedRevsHandler(
66
			$this->approvedRevsFacade
67
		);
68
69
		$this->assertFalse(
70
			$instance->isApprovedUpdate( $title, 1001 )
71
		);
72
	}
73
74
	public function testDoChangeRevision() {
75
76
		$this->approvedRevsFacade->expects( $this->once() )
77
			->method( 'getApprovedRevID' )
78
			->will( $this->returnValue( 42 ) );
79
80
		$title = $this->getMockBuilder( '\Title' )
81
			->disableOriginalConstructor()
82
			->getMock();
83
84
		$instance = new ApprovedRevsHandler(
85
			$this->approvedRevsFacade
86
		);
87
88
		$rev = null;
89
90
		$instance->doChangeRevision( $title, $rev );
91
	}
92
93
	public function testDoChangeRevisionID() {
94
95
		$this->approvedRevsFacade->expects( $this->once() )
96
			->method( 'getApprovedRevID' )
97
			->will( $this->returnValue( 42 ) );
98
99
		$title = $this->getMockBuilder( '\Title' )
100
			->disableOriginalConstructor()
101
			->getMock();
102
103
		$instance = new ApprovedRevsHandler(
104
			$this->approvedRevsFacade
105
		);
106
107
		$rev = null;
108
109
		$instance->doChangeRevisionID( $title, $rev );
110
	}
111
112
}
113