in Section Testing Not Found link for 'MediaWikiTestCase' leading to -> https://doc.wikimedia.org/mediawiki-core/master/php/classMediaWikiTestCase.html
Can someone align please ? Thanks -- Christian 🇫🇷 FR (talk) 13:36, 6 April 2023 (UTC)
in Section Testing Not Found link for 'MediaWikiTestCase' leading to -> https://doc.wikimedia.org/mediawiki-core/master/php/classMediaWikiTestCase.html
Can someone align please ? Thanks -- Christian 🇫🇷 FR (talk) 13:36, 6 April 2023 (UTC)
What is the correct way for an extension to modify an existing config variable (either in another extension or in core). For example, ProofreadPage adds the Index namespace to $wgTemplateStylesNamespaces, or SpecialNamespaces modifies $wgExtraNamespaces and $wgNamespaceAliases. Currently this is done by modifying the globals.
I'm slightly suspecting that this sort of thing shouldn't be done, and actually where there's a need to change config variables then an actual mechanism should be provided for doing that (e.g. a hook).
It should not be done. The extension should create an attribute, and then other extensions can append to that attribute. TemplateStyles already supports this.
It sounds like the answer to this is that it should not be done, and that extensions should use attributes for this purpose.
@Legoktm: oops, I replied to myself without reloading the page, so didn't see your reply!
The current text in Testing suggests that setMwGlobals
should only be used for core and manifest version 1 extensions. However using $wgConfigRegistry
in a unittest for a manifest version 2 extension doesn't actually override the configs (phab:T255497) nor is this used by any extension today.
Is $wgConfigRegistry
meant to work in phpunit or is the phrasing of the section merely in need of tweaking?
I suspect it's out of date and needs updating. I'm pretty sure extensions are allowed to use setMwGlobals(); lots certainly do.