TemplatePageRendererTest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 51
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
dl 0
loc 51
rs 10
c 0
b 0
f 0
wmc 2
lcom 0
cbo 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testRenderPage() 0 19 1
A renderProvider() 0 24 1
1
<?php
2
3
namespace Tests\Unit\SubPageList\UI\PageRenderer;
4
5
use PHPUnit\Framework\TestCase;
6
use SubPageList\Lister\Page;
7
use SubPageList\Lister\UI\PageRenderer\TemplatePageRenderer;
8
use Title;
9
10
/**
11
 * @covers \SubPageList\Lister\UI\PageRenderer\TemplatePageRenderer
12
 *
13
 * @group SubPageList
14
 *
15
 * @licence GNU GPL v2+
16
 * @author Jeroen De Dauw < [email protected] >
17
 */
18
class TemplatePageRendererTest extends TestCase {
19
20
	/**
21
	 * @dataProvider renderProvider
22
	 */
23
	public function testRenderPage( Page $page, $templateName, $expected ) {
24
		$GLOBALS['wgNamespacesWithSubpages'][NS_MAIN] = true;
25
26
		$basicRenderer = $this->createMock( 'SubPageList\Lister\UI\PageRenderer\PageRenderer' );
27
28
		$basicRenderer->expects( $this->once() )
29
			->method( 'renderPage' )
30
			->with( $this->equalTo( $page ) )
31
			->will( $this->returnValue( 'Ohi' ) );
32
33
		$renderer = new TemplatePageRenderer(
34
			$basicRenderer,
35
			$templateName
36
		);
37
38
		$actual = $renderer->renderPage( $page );
39
40
		$this->assertEquals( $expected, $actual );
41
	}
42
43
	public function renderProvider() {
44
		return [
45
			[
46
				new Page( Title::newFromText( 'AAA' ) ),
47
				'MyTemplate',
48
				'{{MyTemplate|Ohi}}',
49
			],
50
			[
51
				new Page( Title::newFromText( 'AAA/BBB' ) ),
52
				'MyTemplate',
53
				'{{MyTemplate|Ohi}}',
54
			],
55
			[
56
				new Page( Title::newFromText( 'Foo:Bar' ) ),
57
				'MyTemplate',
58
				'{{MyTemplate|Ohi}}',
59
			],
60
			[
61
				new Page( Title::newFromText( 'Foo:Bar/Baz' ) ),
62
				'MyTemplate',
63
				'{{MyTemplate|Ohi}}',
64
			],
65
		];
66
	}
67
68
}
69