From: C. Scott Ananian Date: Mon, 26 Jun 2017 17:56:30 +0000 (-0400) Subject: tests: Reset LanguageConverter conversion tables between test cases X-Git-Tag: 1.31.0-rc.0~2873^2 X-Git-Url: http://git.cyclocoop.org/%22%20.%20generer_url_ecrire%28%22auteur_infos%22%2C%22id_auteur=%24connect_id_auteur%22%29%20.%20%22?a=commitdiff_plain;h=b80b7020ce64dc02121cdc096edb0ebcec003552;p=lhc%2Fweb%2Fwiklou.git tests: Reset LanguageConverter conversion tables between test cases Conversion rules defined in a previous test case were leaking into subsequent test cases. Existing tests had worked around this by defining non-overlapping rules, but it's better to just fix the problem at the source. Change-Id: I65736520cd04bfe8949b29ade07338a6e1b88a4d --- diff --git a/languages/FakeConverter.php b/languages/FakeConverter.php index 0cddc9957e..0bf88c6319 100644 --- a/languages/FakeConverter.php +++ b/languages/FakeConverter.php @@ -125,4 +125,7 @@ class FakeConverter { public function updateConversionTable( Title $title ) { } + + public function reloadTables() { + } } diff --git a/languages/LanguageConverter.php b/languages/LanguageConverter.php index 19d644c57e..ef88c123eb 100644 --- a/languages/LanguageConverter.php +++ b/languages/LanguageConverter.php @@ -891,7 +891,9 @@ class LanguageConverter { /** * Reload the conversion tables. * - * @private + * Public only for use by test suites which need to reset the converter + * state. + * */ function reloadTables() { if ( $this->mTables ) { diff --git a/tests/parser/ParserTestRunner.php b/tests/parser/ParserTestRunner.php index f44b0d5e26..26c5586a32 100644 --- a/tests/parser/ParserTestRunner.php +++ b/tests/parser/ParserTestRunner.php @@ -1045,6 +1045,8 @@ class ParserTestRunner { $context->setUser( $user ); $context->setLanguage( $lang ); $teardown[] = function () use ( $context ) { + // Clear language conversion tables + $context->getLanguage()->getConverter()->reloadTables(); // Reset context to the restored globals $context->setUser( $GLOBALS['wgUser'] ); $context->setLanguage( $GLOBALS['wgContLang'] );