Completely breaks login.
This reverts commit 8e7a0a0912.
Change-Id: Ide7ab5632e987e81374c21173df6ab3998649df7
57 lines
1.5 KiB
PHP
57 lines
1.5 KiB
PHP
<?php
|
|
|
|
class ConfigFactoryTest extends MediaWikiTestCase {
|
|
|
|
/**
|
|
* @covers ConfigFactory::register
|
|
*/
|
|
public function testRegister() {
|
|
$factory = new ConfigFactory();
|
|
$factory->register( 'unittest', 'GlobalVarConfig::newInstance' );
|
|
$this->assertTrue( true ); // No exception thrown
|
|
$this->setExpectedException( 'InvalidArgumentException' );
|
|
$factory->register( 'invalid', 'Invalid callback' );
|
|
}
|
|
|
|
/**
|
|
* @covers ConfigFactory::makeConfig
|
|
*/
|
|
public function testMakeConfig() {
|
|
$factory = new ConfigFactory();
|
|
$factory->register( 'unittest', 'GlobalVarConfig::newInstance' );
|
|
$conf = $factory->makeConfig( 'unittest' );
|
|
$this->assertInstanceOf( 'Config', $conf );
|
|
}
|
|
|
|
/**
|
|
* @covers ConfigFactory::makeConfig
|
|
*/
|
|
public function testMakeConfigWithNoBuilders() {
|
|
$factory = new ConfigFactory();
|
|
$this->setExpectedException( 'ConfigException' );
|
|
$factory->makeConfig( 'nobuilderregistered' );
|
|
}
|
|
|
|
/**
|
|
* @covers ConfigFactory::makeConfig
|
|
*/
|
|
public function testMakeConfigWithInvalidCallback() {
|
|
$factory = new ConfigFactory();
|
|
$factory->register( 'unittest', function () {
|
|
return true; // Not a Config object
|
|
} );
|
|
$this->setExpectedException( 'UnexpectedValueException' );
|
|
$factory->makeConfig( 'unittest' );
|
|
}
|
|
|
|
/**
|
|
* @covers ConfigFactory::getDefaultInstance
|
|
*/
|
|
public function testGetDefaultInstance() {
|
|
$factory = ConfigFactory::getDefaultInstance();
|
|
$this->assertInstanceOf( 'Config', $factory->makeConfig( 'main' ) );
|
|
|
|
$this->setExpectedException( 'ConfigException' );
|
|
$factory->makeConfig( 'xyzzy' );
|
|
}
|
|
}
|