Merge "Add more tests for SkinFactory"
This commit is contained in:
commit
209e403368
1 changed files with 30 additions and 0 deletions
|
|
@ -35,4 +35,34 @@ class SkinFactoryTest extends MediaWikiTestCase {
|
|||
$this->setExpectedException( 'UnexpectedValueException' );
|
||||
$factory->makeSkin( 'unittest' );
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers SkinFactory::makeSkin
|
||||
*/
|
||||
public function testMakeSkinWithValidCallback() {
|
||||
$factory = new SkinFactory();
|
||||
$factory->register( 'testfallback', 'TestFallback', function () {
|
||||
return new SkinFallback();
|
||||
} );
|
||||
|
||||
$skin = $factory->makeSkin( 'testfallback' );
|
||||
$this->assertInstanceOf( 'Skin', $skin );
|
||||
$this->assertInstanceOf( 'SkinFallback', $skin );
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers SkinFactory::getSkinNames
|
||||
*/
|
||||
public function testGetSkinNames() {
|
||||
$factory = new SkinFactory();
|
||||
// A fake callback we can use that will never be called
|
||||
$callback = function() {};
|
||||
$factory->register( 'skin1', 'Skin1', $callback );
|
||||
$factory->register( 'skin2', 'Skin2', $callback );
|
||||
$names = $factory->getSkinNames();
|
||||
$this->assertArrayHasKey( 'skin1', $names );
|
||||
$this->assertArrayHasKey( 'skin2', $names );
|
||||
$this->assertEquals( 'Skin1', $names['skin1'] );
|
||||
$this->assertEquals( 'Skin2', $names['skin2'] );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue