1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<?php
namespace MediaWiki\Tests\Parser\Parsoid\Config;
use MediaWiki\Content\TextContentHandler;
use MediaWiki\MainConfigNames;
use MediaWikiIntegrationTestCase;
/**
* @covers \MediaWiki\Parser\Parsoid\Config\SiteConfig
*/
class SiteConfigTest extends MediaWikiIntegrationTestCase {
public static function provideSupportsContentModels() {
yield [ CONTENT_MODEL_WIKITEXT, true ];
yield [ CONTENT_MODEL_JSON, true ];
yield [ CONTENT_MODEL_JAVASCRIPT, false ];
yield [ 'with-text', true ];
yield [ 'xyzzy', false ];
}
/**
* @dataProvider provideSupportsContentModels
*/
public function testSupportsContentModel( $model, $expected ) {
$contentHandlers = $this->getConfVar( MainConfigNames::ContentHandlers );
$this->overrideConfigValue( MainConfigNames::ContentHandlers, [
'with-text' => [ 'factory' => static function () {
return new TextContentHandler( 'with-text', [ CONTENT_FORMAT_WIKITEXT, 'plain/test' ] );
} ],
] + $contentHandlers );
$this->resetServices();
$siteConfig = $this->getServiceContainer()->getParsoidSiteConfig();
$this->assertSame( $expected, $siteConfig->supportsContentModel( $model ) );
}
}
|