Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F5960645
ExtensionsTestSuite.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
ExtensionsTestSuite.php
View Options
<?php
use
MediaWiki\HookContainer\HookRunner
;
use
MediaWiki\MediaWikiServices
;
use
MediaWiki\Registration\ExtensionRegistry
;
use
PHPUnit\Framework\TestSuite
;
use
SebastianBergmann\FileIterator\Facade
;
/**
* This test suite runs unit tests registered by extensions.
* See https://www.mediawiki.org/wiki/Manual:Hooks/UnitTestsList for details of
* how to register your tests.
*/
class
ExtensionsTestSuite
extends
TestSuite
{
public
function
__construct
()
{
parent
::
__construct
();
if
(
defined
(
'MW_PHPUNIT_EXTENSIONS_TEST_PATHS'
)
)
{
$paths
=
MW_PHPUNIT_EXTENSIONS_TEST_PATHS
;
}
else
{
$paths
=
[];
// Autodiscover extension unit tests
$registry
=
ExtensionRegistry
::
getInstance
();
foreach
(
$registry
->
getAllThings
()
as
$info
)
{
$paths
[]
=
dirname
(
$info
[
'path'
]
)
.
'/tests/phpunit'
;
}
// Extensions can return a list of files or directories
(
new
HookRunner
(
MediaWikiServices
::
getInstance
()->
getHookContainer
()
)
)->
onUnitTestsList
(
$paths
);
}
foreach
(
array_unique
(
$paths
)
as
$path
)
{
if
(
is_dir
(
$path
)
)
{
// If the path is a directory, search for test cases.
// @since 1.24
$suffixes
=
[
'Test.php'
];
$fileIterator
=
new
Facade
();
$matchingFiles
=
$fileIterator
->
getFilesAsArray
(
$path
,
$suffixes
);
$this
->
addTestFiles
(
$matchingFiles
);
}
elseif
(
is_file
(
$path
)
)
{
// Add a single test case or suite class
$this
->
addTestFile
(
$path
);
}
}
}
public
static
function
suite
()
{
return
new
self
;
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sat, Oct 3, 07:28 (2 w, 4 h ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
09/71/1a1702247ddd788c324e12beac8d
Default Alt Text
ExtensionsTestSuite.php (1 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment