class ExtensionProcessorTest extends MediaWikiTestCase {
- private $dir;
+ private $dir, $dirname;
public function setUp() {
parent::setUp();
$this->dir = __DIR__ . '/FooBar/extension.json';
+ $this->dirname = dirname( $this->dir );
}
/**
}
/**
- * @covers ExtensionProcessor::extractConfig
+ * @covers ExtensionProcessor::extractConfig1
*/
- public function testExtractConfig() {
+ public function testExtractConfig1() {
$processor = new ExtensionProcessor;
$info = [
'config' => [
$this->assertEquals( 'somevalue', $extracted['globals']['egBar'] );
}
+ /**
+ * @covers ExtensionProcessor::extractConfig2
+ */
+ public function testExtractConfig2() {
+ $processor = new ExtensionProcessor;
+ $info = [
+ 'config' => [
+ 'Bar' => [ 'value' => 'somevalue' ],
+ 'Foo' => [ 'value' => 10 ],
+ 'Path' => [ 'value' => 'foo.txt', 'path' => true ],
+ ],
+ ] + self::$default;
+ $info2 = [
+ 'config' => [
+ 'Bar' => [ 'value' => 'somevalue' ],
+ ],
+ 'config_prefix' => 'eg',
+ 'name' => 'FooBar2',
+ ];
+ $processor->extractInfo( $this->dir, $info, 2 );
+ $processor->extractInfo( $this->dir, $info2, 2 );
+ $extracted = $processor->getExtractedInfo();
+ $this->assertEquals( 'somevalue', $extracted['globals']['wgBar'] );
+ $this->assertEquals( 10, $extracted['globals']['wgFoo'] );
+ $this->assertEquals( "{$this->dirname}/foo.txt", $extracted['globals']['wgPath'] );
+ // Custom prefix:
+ $this->assertEquals( 'somevalue', $extracted['globals']['egBar'] );
+ }
+
public static function provideExtractExtensionMessagesFiles() {
$dir = __DIR__ . '/FooBar/';
return [