];
/**
- * Things that are not 'attributes', but are not in
+ * Things that are not 'attributes', and are not in
* $globalSettings or $creditsAttributes.
*
* @var array
'ResourceFileModulePaths',
'ResourceModules',
'ResourceModuleSkinStyles',
+ 'QUnitTestModule',
'ExtensionMessagesFiles',
'MessagesDirs',
'type',
* @param string $path
* @param array $info
* @param int $version manifest_version for info
- * @return array
*/
public function extractInfo( $path, array $info, $version ) {
$dir = dirname( $path );
}
}
}
+
+ if ( isset( $info['QUnitTestModule'] ) ) {
+ $data = $info['QUnitTestModule'];
+ if ( isset( $data['localBasePath'] ) ) {
+ if ( $data['localBasePath'] === '' ) {
+ // Avoid double slashes (e.g. /extensions/Example//path)
+ $data['localBasePath'] = $dir;
+ } else {
+ $data['localBasePath'] = "$dir/{$data['localBasePath']}";
+ }
+ }
+ $this->attributes['QUnitTestModules']["test.{$info['name']}"] = $data;
+ }
}
protected function extractExtensionMessagesFiles( $dir, array $info ) {