From cb65b994db55671005880ee38439bbcc58d860a2 Mon Sep 17 00:00:00 2001 From: Kunal Mehta Date: Fri, 30 Jan 2015 13:36:52 -0800 Subject: [PATCH] resourceloader: Add ResourceLoader::isModuleRegistered() Currently if code wants to check whether a module is registered it has to call getModule() and see if the response !== null. Change-Id: I4b470083ddaa5d8cd6be50d5c5b690d4b99b6c4a --- includes/resourceloader/ResourceLoader.php | 11 +++++++++++ .../includes/resourceloader/ResourceLoaderTest.php | 10 ++++++++++ 2 files changed, 21 insertions(+) diff --git a/includes/resourceloader/ResourceLoader.php b/includes/resourceloader/ResourceLoader.php index 1744aa160d..5eab3cb66b 100644 --- a/includes/resourceloader/ResourceLoader.php +++ b/includes/resourceloader/ResourceLoader.php @@ -461,6 +461,17 @@ class ResourceLoader { } } + /** + * Check whether a ResourceLoader module is registered + * + * @since 1.25 + * @param string $name + * @return bool + */ + public function isModuleRegistered( $name ) { + return isset( $this->moduleInfos[$name] ); + } + /** * Get the ResourceLoaderModule object for a given module name. * diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php index 5d83239a29..d756ce3061 100644 --- a/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderTest.php @@ -241,4 +241,14 @@ class ResourceLoaderTest extends ResourceLoaderTestCase { $this->assertTrue( true ); } } + + /** + * @covers ResourceLoader::isModuleRegistered + */ + public function testIsModuleRegistered() { + $rl = new ResourceLoader(); + $rl->register( 'test.module', new ResourceLoaderTestModule() ); + $this->assertTrue( $rl->isModuleRegistered( 'test.module' ) ); + $this->assertFalse( $rl->isModuleRegistered( 'test.modulenotregistered' ) ); + } } -- 2.20.1