X-Git-Url: https://scripts.mit.edu/gitweb/autoinstallsdev/mediawiki.git/blobdiff_plain/19e297c21b10b1b8a3acad5e73fc71dcb35db44a..6932310fd58ebef145fa01eb76edf7150284d8ea:/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php new file mode 100644 index 00000000..c5676982 --- /dev/null +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php @@ -0,0 +1,67 @@ + [], + 'expected' => [ + 'all' => [ '.mw-wiki-logo { background-image: url(/logo.png); }' ], + ], + ], + [ + 'parent' => [ + 'screen' => '.example {}', + ], + 'expected' => [ + 'screen' => [ '.example {}' ], + 'all' => [ '.mw-wiki-logo { background-image: url(/logo.png); }' ], + ], + ], + ]; + } + + /** + * @dataProvider provideGetStyles + * @covers ResourceLoaderSkinModule::normalizeStyles + * @covers ResourceLoaderSkinModule::getStyles + */ + public function testGetStyles( $parent, $expected ) { + $module = $this->getMockBuilder( ResourceLoaderSkinModule::class ) + ->disableOriginalConstructor() + ->setMethods( [ 'readStyleFiles' ] ) + ->getMock(); + $module->expects( $this->once() )->method( 'readStyleFiles' ) + ->willReturn( $parent ); + $module->setConfig( new HashConfig( [ + 'ResourceBasePath' => '/w', + 'Logo' => '/logo.png', + 'LogoHD' => false, + ] ) ); + + $ctx = $this->getMockBuilder( ResourceLoaderContext::class ) + ->disableOriginalConstructor()->getMock(); + + $this->assertEquals( + $module->getStyles( $ctx ), + $expected + ); + } + + /** + * @covers ResourceLoaderSkinModule::isKnownEmpty + */ + public function testIsKnownEmpty() { + $module = $this->getMockBuilder( ResourceLoaderSkinModule::class ) + ->disableOriginalConstructor()->setMethods( null )->getMock(); + $ctx = $this->getMockBuilder( ResourceLoaderContext::class ) + ->disableOriginalConstructor()->getMock(); + + $this->assertFalse( $module->isKnownEmpty( $ctx ) ); + } +}