Merge "tests: Use TestingAccessWrapper to reload LanguageConverter tables"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Tue, 27 Jun 2017 22:08:42 +0000 (22:08 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Tue, 27 Jun 2017 22:08:42 +0000 (22:08 +0000)
1  2 
tests/parser/ParserTestRunner.php

@@@ -28,6 -28,7 +28,7 @@@
  use Wikimedia\Rdbms\IDatabase;
  use MediaWiki\MediaWikiServices;
  use Wikimedia\ScopedCallback;
+ use Wikimedia\TestingAccessWrapper;
  
  /**
   * @ingroup Testing
@@@ -240,7 -241,7 +241,7 @@@ class ParserTestRunner 
                        'name' => 'nullLockManager',
                        'class' => 'NullLockManager',
                ] ];
 -              $reset = function() {
 +              $reset = function () {
                        LockManagerGroup::destroySingletons();
                };
                $setup[] = $reset;
                MediaWikiServices::getInstance()->disableService( 'MediaHandlerFactory' );
                MediaWikiServices::getInstance()->redefineService(
                        'MediaHandlerFactory',
 -                      function() {
 +                      function () {
                                return new MockMediaHandlerFactory();
                        }
                );
         * @return ScopedCallback
         */
        protected function createTeardownObject( $teardown, $nextTeardown = null ) {
 -              return new ScopedCallback( function() use ( $teardown, $nextTeardown ) {
 +              return new ScopedCallback( function () use ( $teardown, $nextTeardown ) {
                        // Schedule teardown snippets in reverse order
                        $teardown = array_reverse( $teardown );
  
                $context->setLanguage( $lang );
                $teardown[] = function () use ( $context ) {
                        // Clear language conversion tables
-                       $context->getLanguage()->getConverter()->reloadTables();
+                       $wrapper = TestingAccessWrapper::newFromObject(
+                               $context->getLanguage()->getConverter()
+                       );
+                       $wrapper->reloadTables();
                        // Reset context to the restored globals
                        $context->setUser( $GLOBALS['wgUser'] );
                        $context->setLanguage( $GLOBALS['wgContLang'] );