From ea7101e6e469bdba88dad852d055c8371726da8c Mon Sep 17 00:00:00 2001 From: Timo Tijhof Date: Sat, 7 Jul 2018 23:48:35 -0700 Subject: [PATCH] resourceloader: Add coverage for StartupModule::getAllModuleHashes Change-Id: I94551a938cd93152eb1bb0a4748e1c0155539c4c --- .../ResourceLoaderStartUpModuleTest.php | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderStartUpModuleTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderStartUpModuleTest.php index 810d1fee62..86956f2602 100644 --- a/tests/phpunit/includes/resourceloader/ResourceLoaderStartUpModuleTest.php +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderStartUpModuleTest.php @@ -589,4 +589,49 @@ mw.loader.register( [ ); } + /** + * @covers ResourceLoaderStartupModule::getAllModuleHashes + * @covers ResourceLoaderStartupModule::getDefinitionSummary + */ + public function testGetVersionHash_varyModule() { + $context1 = $this->getResourceLoaderContext(); + $rl1 = $context1->getResourceLoader(); + $rl1->register( [ + 'test.a' => new ResourceLoaderTestModule(), + 'test.b' => new ResourceLoaderTestModule(), + ] ); + $module = new ResourceLoaderStartupModule(); + $version1 = $module->getVersionHash( $context1 ); + + $context2 = $this->getResourceLoaderContext(); + $rl2 = $context2->getResourceLoader(); + $rl2->register( [ + 'test.b' => new ResourceLoaderTestModule(), + 'test.c' => new ResourceLoaderTestModule(), + ] ); + $module = new ResourceLoaderStartupModule(); + $version2 = $module->getVersionHash( $context2 ); + + $context3 = $this->getResourceLoaderContext(); + $rl3 = $context3->getResourceLoader(); + $rl3->register( [ + 'test.a' => new ResourceLoaderTestModule(), + 'test.b' => new ResourceLoaderTestModule( [ 'script' => 'different' ] ), + ] ); + $module = new ResourceLoaderStartupModule(); + $version3 = $module->getVersionHash( $context3 ); + + $this->assertEquals( + $version1, + $version2, + 'Module name is insignificant' + ); + + $this->assertNotEquals( + $version1, + $version3, + 'Hash change of any module impacts startup hash' + ); + } + } -- 2.20.1