From: Timo Tijhof Date: Wed, 21 Jun 2017 19:37:44 +0000 (+0100) Subject: resourceloader: Add unit tests for ResourceLoader::isFileModule X-Git-Tag: 1.31.0-rc.0~2931^2 X-Git-Url: https://git.cyclocoop.org/%7B%24www_url%7Dadmin/compta/banques/ajouter.php?a=commitdiff_plain;h=84074e856dc762b041d9fe412ae3bfaaeafe176b;p=lhc%2Fweb%2Fwiklou.git resourceloader: Add unit tests for ResourceLoader::isFileModule Change-Id: Ic21ae9e9cc418868ad7b93fe65bd09495f38d1b2 --- diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php index 0833047a0c..79d0784c27 100644 --- a/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php @@ -113,6 +113,58 @@ class ResourceLoaderTest extends ResourceLoaderTestCase { ); } + public function provideTestIsFileModule() { + $fileModuleObj = $this->getMockBuilder( ResourceLoaderFileModule::class ) + ->disableOriginalConstructor() + ->getMock(); + return [ + 'object' => [ false, + new ResourceLoaderTestModule() + ], + 'FileModule object' => [ false, + $fileModuleObj + ], + 'simple empty' => [ true, + [] + ], + 'simple scripts' => [ true, + [ 'scripts' => 'example.js' ] + ], + 'simple scripts, raw and targets' => [ true, [ + 'scripts' => [ 'a.js', 'b.js' ], + 'raw' => true, + 'targets' => [ 'desktop', 'mobile' ], + ] ], + 'FileModule' => [ true, + [ 'class' => ResourceLoaderFileModule::class, 'scripts' => 'example.js' ] + ], + 'TestModule' => [ false, + [ 'class' => ResourceLoaderTestModule::class, 'scripts' => 'example.js' ] + ], + 'SkinModule (FileModule subclass)' => [ true, + [ 'class' => ResourceLoaderSkinModule::class, 'scripts' => 'example.js' ] + ], + 'JqueryMsgModule (FileModule subclass)' => [ true, [ + 'class' => ResourceLoaderJqueryMsgModule::class, + 'scripts' => 'example.js', + ] ], + 'WikiModule' => [ false, [ + 'class' => ResourceLoaderWikiModule::class, + 'scripts' => [ 'MediaWiki:Example.js' ], + ] ], + ]; + } + + /** + * @dataProvider provideTestIsFileModule + * @covers ResourceLoader::isFileModule + */ + public function testIsFileModule( $expected, $module ) { + $rl = TestingAccessWrapper::newFromObject( new EmptyResourceLoader() ); + $rl->register( 'test', $module ); + $this->assertSame( $expected, $rl->isFileModule( 'test' ) ); + } + /** * @covers ResourceLoader::isModuleRegistered */