Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F2754126
SpecialPageTestBase.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
SpecialPageTestBase.php
View Options
<?php
use
MediaWiki\Language\Language
;
use
MediaWiki\Permissions\Authority
;
use
MediaWiki\Request\WebRequest
;
use
MediaWiki\SpecialPage\SpecialPage
;
/**
* Base class for testing special pages.
*
* @since 1.26
*
* @license GPL-2.0-or-later
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
* @author Daniel Kinzler
* @author Addshore
* @author Thiemo Kreuz
*/
abstract
class
SpecialPageTestBase
extends
MediaWikiIntegrationTestCase
{
/** @var int */
private
$obLevel
;
protected
function
setUp
():
void
{
parent
::
setUp
();
$this
->
obLevel
=
ob_get_level
();
}
protected
function
tearDown
():
void
{
$obLevel
=
ob_get_level
();
while
(
ob_get_level
()
>
$this
->
obLevel
)
{
ob_end_clean
();
}
try
{
if
(
$obLevel
!==
$this
->
obLevel
)
{
$this
->
fail
(
"Test changed output buffer level: was {$this->obLevel} before test, but $obLevel after test."
);
}
}
finally
{
parent
::
tearDown
();
}
}
/**
* Returns a new instance of the special page under test.
*
* @return SpecialPage
*/
abstract
protected
function
newSpecialPage
();
/**
* @param string|null $subPage The subpage parameter to call the page with
* @param WebRequest|null $request Web request that may contain URL parameters, etc
* @param Language|string|null $language The language which should be used in the context;
* defaults to "qqx"
* @param Authority|null $performer The user which should be used in the context of this special page
* @param bool $fullHtml if true, the entirety of the generated HTML will be returned, this
* includes the opening <!DOCTYPE> declaration and closing </html> tag. If false, only value
* of OutputPage::getHTML() will be returned except if the page is redirect or where OutputPage
* is completely disabled.
*
* @return array [ string, WebResponse ] A two-elements array containing the HTML output
* generated by the special page as well as the response object.
*/
protected
function
executeSpecialPage
(
$subPage
=
''
,
?
WebRequest
$request
=
null
,
$language
=
null
,
?
Authority
$performer
=
null
,
$fullHtml
=
false
)
{
return
(
new
SpecialPageExecutor
()
)->
executeSpecialPage
(
$this
->
newSpecialPage
(),
$subPage
,
$request
,
$language
?:
'qqx'
,
$performer
,
$fullHtml
);
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Fri, Jul 3, 22:11 (2 h, 23 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
81/5b/0f775e0dc652929ef8bd9184032b
Default Alt Text
SpecialPageTestBase.php (2 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment