Keep Block as a deprecated class alias for DatabaseBlock. Update calls to the Block constructor and Block static methods from external classes. Also update documentation in several places that refer to blocks as Blocks. Bug: T222737 Change-Id: I6d96b63ca0a84bee19486471e0a16a53a79d768a
43 lines
1.1 KiB
PHP
43 lines
1.1 KiB
PHP
<?php
|
|
|
|
use Wikimedia\TestingAccessWrapper;
|
|
use MediaWiki\Block\DatabaseBlock;
|
|
use MediaWiki\Block\SystemBlock;
|
|
|
|
/**
|
|
* @covers ApiBlockInfoTrait
|
|
*/
|
|
class ApiBlockInfoTraitTest extends MediaWikiTestCase {
|
|
/**
|
|
* @dataProvider provideGetBlockDetails
|
|
*/
|
|
public function testGetBlockDetails( $block, $expectedInfo ) {
|
|
$mock = $this->getMockForTrait( ApiBlockInfoTrait::class );
|
|
$info = TestingAccessWrapper::newFromObject( $mock )->getBlockDetails( $block );
|
|
$subset = array_merge( [
|
|
'blockid' => null,
|
|
'blockedby' => '',
|
|
'blockedbyid' => 0,
|
|
'blockreason' => '',
|
|
'blockexpiry' => 'infinite',
|
|
], $expectedInfo );
|
|
$this->assertArraySubset( $subset, $info );
|
|
}
|
|
|
|
public static function provideGetBlockDetails() {
|
|
return [
|
|
'Sitewide block' => [
|
|
new DatabaseBlock(),
|
|
[ 'blockpartial' => false ],
|
|
],
|
|
'Partial block' => [
|
|
new DatabaseBlock( [ 'sitewide' => false ] ),
|
|
[ 'blockpartial' => true ],
|
|
],
|
|
'System block' => [
|
|
new SystemBlock( [ 'systemBlock' => 'proxy' ] ),
|
|
[ 'systemblocktype' => 'proxy' ]
|
|
],
|
|
];
|
|
}
|
|
}
|