mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-12-11 14:06:19 +00:00
72b4f8cdbb
* Rename imported classes in VE that will be renamed in core * Re-enable tests that would fail when the core patch is merged Depends-On: I506f3303ae8f9e4db17299211366bef1558f142c Change-Id: I59ebeb24fa0de5f10d1501cc0830c7e4805e1003
93 lines
2.4 KiB
PHP
93 lines
2.4 KiB
PHP
<?php
|
|
|
|
namespace MediaWiki\Extension\VisualEditor\Tests;
|
|
|
|
use MediaWiki\Extension\VisualEditor\Hooks;
|
|
use MediaWikiIntegrationTestCase;
|
|
|
|
/**
|
|
* @covers \MediaWiki\Extension\VisualEditor\Hooks
|
|
* @group Database
|
|
*/
|
|
class HooksTest extends MediaWikiIntegrationTestCase {
|
|
|
|
/**
|
|
* @dataProvider provideOnResourceLoaderGetConfigVars
|
|
*/
|
|
public function testOnResourceLoaderGetConfigVars( array $config, array $expected ) {
|
|
$this->overrideConfigValues( $config );
|
|
|
|
$vars = [];
|
|
Hooks::onResourceLoaderGetConfigVars( $vars );
|
|
|
|
$this->assertArrayHasKey( 'wgVisualEditorConfig', $vars );
|
|
$veConfig = $vars['wgVisualEditorConfig'];
|
|
|
|
foreach ( $expected as $name => $value ) {
|
|
$this->assertArrayHasKey( $name, $veConfig );
|
|
$this->assertSame( $value, $veConfig[$name] );
|
|
}
|
|
}
|
|
|
|
public function provideOnResourceLoaderGetConfigVars() {
|
|
// TODO: test a lot more config!
|
|
|
|
yield 'restbaseUrl: No VRS modules, DefaultParsoidClient=vrs' => [
|
|
[
|
|
'VirtualRestConfig' => [ 'modules' => [] ],
|
|
'VisualEditorRestbaseURL' => 'parsoid-url',
|
|
'VisualEditorFullRestbaseURL' => 'full-parsoid-url',
|
|
'VisualEditorDefaultParsoidClient' => 'vrs',
|
|
],
|
|
[
|
|
'restbaseUrl' => false,
|
|
'fullRestbaseUrl' => false,
|
|
]
|
|
];
|
|
yield 'restbaseUrl: VRS modules available, DefaultParsoidClient=vrs' => [
|
|
[
|
|
'VirtualRestConfig' => [ 'modules' => [
|
|
'parsoid' => true,
|
|
] ],
|
|
'VisualEditorRestbaseURL' => 'parsoid-url',
|
|
'VisualEditorFullRestbaseURL' => 'full-parsoid-url',
|
|
'VisualEditorDefaultParsoidClient' => 'vrs',
|
|
],
|
|
[
|
|
'restbaseUrl' => 'parsoid-url',
|
|
'fullRestbaseUrl' => 'full-parsoid-url',
|
|
]
|
|
];
|
|
yield 'restbaseUrl: VRS modules available, but no direct access URLs. DefaultParsoidClient=vrs' => [
|
|
[
|
|
'VirtualRestConfig' => [ 'modules' => [
|
|
'parsoid' => true,
|
|
] ],
|
|
'VisualEditorRestbaseURL' => 'parsoid-url',
|
|
'VisualEditorFullRestbaseURL' => 'full-parsoid-url',
|
|
'VisualEditorDefaultParsoidClient' => 'vrs',
|
|
],
|
|
[
|
|
'restbaseUrl' => 'parsoid-url',
|
|
'fullRestbaseUrl' => 'full-parsoid-url',
|
|
]
|
|
];
|
|
|
|
yield 'restbaseUrl: VRS modules available, but DefaultParsoidClient=direct' => [
|
|
[
|
|
'VirtualRestConfig' => [ 'modules' => [
|
|
'parsoid' => true,
|
|
] ],
|
|
'VisualEditorRestbaseURL' => 'parsoid-url',
|
|
'VisualEditorFullRestbaseURL' => 'full-parsoid-url',
|
|
'VisualEditorDefaultParsoidClient' => 'direct',
|
|
],
|
|
[
|
|
'restbaseUrl' => false,
|
|
'fullRestbaseUrl' => false,
|
|
]
|
|
];
|
|
}
|
|
|
|
}
|