X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Fincludes%2Fresourceloader%2FDerivativeResourceLoaderContextTest.php;h=db1fb6452f4cd1144948f8083664686dbd044a4f;hb=2ab7ae9d24009f8cd7555cdbd15c9a852b1cc4db;hp=90c9f385bb5f93f8dfab8ec842bd9fc077299f6e;hpb=9ba3fca2d8adc56787c8efc32c41424cb212e387;p=lhc%2Fweb%2Fwiklou.git diff --git a/tests/phpunit/includes/resourceloader/DerivativeResourceLoaderContextTest.php b/tests/phpunit/includes/resourceloader/DerivativeResourceLoaderContextTest.php index 90c9f385bb..db1fb6452f 100644 --- a/tests/phpunit/includes/resourceloader/DerivativeResourceLoaderContextTest.php +++ b/tests/phpunit/includes/resourceloader/DerivativeResourceLoaderContextTest.php @@ -2,11 +2,13 @@ /** * @group ResourceLoader + * @covers DerivativeResourceLoaderContext */ class DerivativeResourceLoaderContextTest extends PHPUnit_Framework_TestCase { - protected static function getResourceLoaderContext() { - $resourceLoader = new ResourceLoader(); + use MediaWikiCoversValidator; + + protected static function getContext() { $request = new FauxRequest( [ 'lang' => 'zh', 'modules' => 'test.context', @@ -14,42 +16,76 @@ class DerivativeResourceLoaderContextTest extends PHPUnit_Framework_TestCase { 'skin' => 'fallback', 'target' => 'test', ] ); - return new ResourceLoaderContext( $resourceLoader, $request ); + return new ResourceLoaderContext( new ResourceLoader(), $request ); } - public function testGet() { - $context = self::getResourceLoaderContext(); - $derived = new DerivativeResourceLoaderContext( $context ); + public function testGetInherited() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + // Request parameters + $this->assertEquals( $derived->getDebug(), false ); $this->assertEquals( $derived->getLanguage(), 'zh' ); $this->assertEquals( $derived->getModules(), [ 'test.context' ] ); $this->assertEquals( $derived->getOnly(), 'scripts' ); $this->assertEquals( $derived->getSkin(), 'fallback' ); + $this->assertEquals( $derived->getUser(), null ); + + // Misc + $this->assertEquals( $derived->getDirection(), 'ltr' ); $this->assertEquals( $derived->getHash(), 'zh|fallback|||scripts|||||' ); } - public function testSetLanguage() { - $context = self::getResourceLoaderContext(); + public function testModules() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $derived->setModules( [ 'test.override' ] ); + $this->assertEquals( $derived->getModules(), [ 'test.override' ] ); + } + + public function testLanguage() { + $context = self::getContext(); $derived = new DerivativeResourceLoaderContext( $context ); $derived->setLanguage( 'nl' ); $this->assertEquals( $derived->getLanguage(), 'nl' ); + } + + public function testDirection() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $derived->setLanguage( 'nl' ); + $this->assertEquals( $derived->getDirection(), 'ltr' ); $derived->setLanguage( 'he' ); $this->assertEquals( $derived->getDirection(), 'rtl' ); + + $derived->setDirection( 'ltr' ); + $this->assertEquals( $derived->getDirection(), 'ltr' ); } - public function testSetModules() { - $context = self::getResourceLoaderContext(); - $derived = new DerivativeResourceLoaderContext( $context ); + public function testSkin() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); - $derived->setModules( [ 'test.override' ] ); - $this->assertEquals( $derived->getModules(), [ 'test.override' ] ); + $derived->setSkin( 'override' ); + $this->assertEquals( $derived->getSkin(), 'override' ); } - public function testSetOnly() { - $context = self::getResourceLoaderContext(); - $derived = new DerivativeResourceLoaderContext( $context ); + public function testUser() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $derived->setUser( 'Example' ); + $this->assertEquals( $derived->getUser(), 'Example' ); + } + + public function testDebug() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $derived->setDebug( true ); + $this->assertEquals( $derived->getDebug(), true ); + } + + public function testOnly() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); $derived->setOnly( 'styles' ); $this->assertEquals( $derived->getOnly(), 'styles' ); @@ -58,21 +94,35 @@ class DerivativeResourceLoaderContextTest extends PHPUnit_Framework_TestCase { $this->assertEquals( $derived->getOnly(), null ); } - public function testSetSkin() { - $context = self::getResourceLoaderContext(); - $derived = new DerivativeResourceLoaderContext( $context ); + public function testVersion() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); - $derived->setSkin( 'override' ); - $this->assertEquals( $derived->getSkin(), 'override' ); + $derived->setVersion( 'hw1' ); + $this->assertEquals( $derived->getVersion(), 'hw1' ); + } + + public function testRaw() { + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $derived->setRaw( true ); + $this->assertEquals( $derived->getRaw(), true ); } public function testGetHash() { - $context = self::getResourceLoaderContext(); - $derived = new DerivativeResourceLoaderContext( $context ); + $derived = new DerivativeResourceLoaderContext( self::getContext() ); + + $this->assertEquals( $derived->getHash(), 'zh|fallback|||scripts|||||' ); $derived->setLanguage( 'nl' ); + $derived->setUser( 'Example' ); // Assert that subclass is able to clear parent class "hash" member - $this->assertEquals( $derived->getHash(), 'nl|fallback|||scripts|||||' ); + $this->assertEquals( $derived->getHash(), 'nl|fallback||Example|scripts|||||' ); } + public function testAccessors() { + $context = self::getContext(); + $derived = new DerivativeResourceLoaderContext( $context ); + $this->assertSame( $derived->getRequest(), $context->getRequest() ); + $this->assertSame( $derived->getResourceLoader(), $context->getResourceLoader() ); + } }