X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Fincludes%2FBlockTest.php;h=12b277e94f5d71a5423e8598075be5eee68722e6;hb=b8bf745ca957de92f447ded545179663d344191f;hp=9f386599ebe97a7afae836985bec63e67312b468;hpb=cd69b253b13c66eb5f61c27200f22ee7eac4cde0;p=lhc%2Fweb%2Fwiklou.git diff --git a/tests/phpunit/includes/BlockTest.php b/tests/phpunit/includes/BlockTest.php index 9f386599eb..12b277e94f 100644 --- a/tests/phpunit/includes/BlockTest.php +++ b/tests/phpunit/includes/BlockTest.php @@ -409,4 +409,33 @@ class BlockTest extends MediaWikiLangTestCase { "Account creation should not be blocked by default" ); } + + public function testSystemBlocks() { + $blockOptions = [ + 'address' => 'UTBlockee', + 'reason' => 'test system block', + 'timestamp' => wfTimestampNow(), + 'expiry' => $this->db->getInfinity(), + 'byText' => 'MetaWikiUser', + 'systemBlock' => 'test', + 'enableAutoblock' => true, + ]; + $block = new Block( $blockOptions ); + + $this->assertSame( 'test', $block->getSystemBlockType() ); + + try { + $block->insert(); + $this->fail( 'Expected exception not thrown' ); + } catch ( MWException $ex ) { + $this->assertSame( 'Cannot insert a system block into the database', $ex->getMessage() ); + } + + try { + $block->doAutoblock( '192.0.2.2' ); + $this->fail( 'Expected exception not thrown' ); + } catch ( MWException $ex ) { + $this->assertSame( 'Cannot autoblock from a system block', $ex->getMessage() ); + } + } }