MediaWiki REL1_32
SpecialPageTestBase.php
Go to the documentation of this file.
1<?php
2
14abstract class SpecialPageTestBase extends MediaWikiTestCase {
15
16 private $obLevel;
17
18 protected function setUp() {
19 parent::setUp();
20
21 $this->obLevel = ob_get_level();
22 }
23
24 protected function tearDown() {
25 $obLevel = ob_get_level();
26
27 while ( ob_get_level() > $this->obLevel ) {
28 ob_end_clean();
29 }
30
31 try {
32 if ( $obLevel !== $this->obLevel ) {
33 $this->fail(
34 "Test changed output buffer level: was {$this->obLevel} before test, but $obLevel after test."
35 );
36 }
37 } finally {
38 parent::tearDown();
39 }
40 }
41
47 abstract protected function newSpecialPage();
48
59 protected function executeSpecialPage(
60 $subPage = '',
61 WebRequest $request = null,
62 $language = null,
63 User $user = null
64 ) {
65 return ( new SpecialPageExecutor() )->executeSpecialPage(
66 $this->newSpecialPage(),
67 $subPage,
69 $language,
70 $user
71 );
72 }
73
74}
Base class for testing special pages.
newSpecialPage()
Returns a new instance of the special page under test.
executeSpecialPage( $subPage='', WebRequest $request=null, $language=null, User $user=null)
The User object encapsulates all of the user-specific settings (user_id, name, rights,...
Definition User.php:47
The WebRequest class encapsulates getting at data passed in the URL or via a POSTed form stripping il...
do that in ParserLimitReportFormat instead use this to modify the parameters of the image all existing parser cache entries will be invalid To avoid you ll need to handle that somehow(e.g. with the RejectParserCacheValue hook) because MediaWiki won 't do it for you. & $defaults also a ContextSource after deleting those rows but within the same transaction you ll probably need to make sure the header is varied on $request
Definition hooks.txt:2880