class ResourceLoaderStartUpModuleTest extends ResourceLoaderTestCase {
+ // Version hash for a blank file module.
+ // Result of ResourceLoader::makeHash(), ResourceLoaderTestModule
+ // and ResourceLoaderFileModule::getDefinitionSummary().
+ protected static $blankVersion = 'wvTifjse';
+
+ protected static function expandPlaceholders( $text ) {
+ return strtr( $text, array(
+ '{blankVer}' => self::$blankVersion
+ ) );
+ }
+
public static function provideGetModuleRegistrations() {
return array(
array( array(
mw.loader.register( [
[
"test.blank",
- "wvTifjse"
+ "{blankVer}"
]
] );',
) ),
mw.loader.register( [
[
"test.blank",
- "wvTifjse"
+ "{blankVer}"
],
[
"test.group.foo",
- "wvTifjse",
+ "{blankVer}",
[],
"x-foo"
],
[
"test.group.bar",
- "wvTifjse",
+ "{blankVer}",
[],
"x-bar"
]
mw.loader.register( [
[
"test.blank",
- "wvTifjse"
+ "{blankVer}"
]
] );'
) ),
mw.loader.register( [
[
"test.blank",
- "wvTifjse",
+ "{blankVer}",
[],
null,
"example"
mw.loader.register( [
[
"test.x.core",
- "wvTifjse"
+ "{blankVer}"
],
[
"test.x.polyfill",
- "wvTifjse",
+ "{blankVer}",
[],
null,
null,
],
[
"test.y.polyfill",
- "wvTifjse",
+ "{blankVer}",
[],
null,
null,
],
[
"test.z.foo",
- "wvTifjse",
+ "{blankVer}",
[
0,
1,
mw.loader.register( [
[
"test.blank",
- "wvTifjse"
+ "{blankVer}"
],
[
"test.x.core",
- "wvTifjse"
+ "{blankVer}"
],
[
"test.x.util",
- "wvTifjse",
+ "{blankVer}",
[
1
]
],
[
"test.x.foo",
- "wvTifjse",
+ "{blankVer}",
[
1
]
],
[
"test.x.bar",
- "wvTifjse",
+ "{blankVer}",
[
2
]
],
[
"test.x.quux",
- "wvTifjse",
+ "{blankVer}",
[
3,
4,
],
[
"test.group.foo.1",
- "wvTifjse",
+ "{blankVer}",
[],
"x-foo"
],
[
"test.group.foo.2",
- "wvTifjse",
+ "{blankVer}",
[],
"x-foo"
],
[
"test.group.bar.1",
- "wvTifjse",
+ "{blankVer}",
[],
"x-bar"
],
[
"test.group.bar.2",
- "wvTifjse",
+ "{blankVer}",
[],
"x-bar",
"example"
$context = $this->getResourceLoaderContext();
$rl = $context->getResourceLoader();
-
$rl->register( $case['modules'] );
-
$module = new ResourceLoaderStartUpModule();
+ $out = ltrim( $case['out'], "\n" );
+
$this->assertEquals(
- ltrim( $case['out'], "\n" ),
+ self::expandPlaceholders( $out ),
$module->getModuleRegistrations( $context ),
$case['msg']
);
$rl = $context->getResourceLoader();
$rl->register( $modules );
$module = new ResourceLoaderStartUpModule();
+ $out = 'mw.loader.addSource({"local":"/w/load.php"});' . "\n"
+ . 'mw.loader.register(['
+ . '["test.blank","{blankVer}"],'
+ . '["test.min","{blankVer}",[0],null,null,'
+ . '"return!!(window.JSON\u0026\u0026JSON.parse\u0026\u0026JSON.stringify);"'
+ . ']]);';
+
$this->assertEquals(
-'mw.loader.addSource({"local":"/w/load.php"});' . "\n"
-. 'mw.loader.register(['
-. '["test.blank","wvTifjse"],'
-. '["test.min","wvTifjse",[0],null,null,'
-. '"return!!(window.JSON\u0026\u0026JSON.parse\u0026\u0026JSON.stringify);"'
-. ']]);',
+ self::expandPlaceholders( $out ),
$module->getModuleRegistrations( $context ),
'Minified output'
);
$rl = $context->getResourceLoader();
$rl->register( $modules );
$module = new ResourceLoaderStartUpModule();
- $this->assertEquals(
+ $out =
'mw.loader.addSource( {
"local": "/w/load.php"
} );
mw.loader.register( [
[
"test.blank",
- "wvTifjse"
+ "{blankVer}"
],
[
"test.min",
- "wvTifjse",
+ "{blankVer}",
[
0
],
null,
"return !!( window.JSON \u0026\u0026 JSON.parse \u0026\u0026 JSON.stringify);"
]
-] );',
+] );';
+
+ $this->assertEquals(
+ self::expandPlaceholders( $out ),
$module->getModuleRegistrations( $context ),
'Unminified output'
);