Merge "Enable $wgResourceLoaderStorageEnabled by default"
[lhc/web/wiklou.git] / tests / phpunit / includes / search / SearchEngineTest.php
index f084c64..0b34b6f 100644 (file)
@@ -172,11 +172,17 @@ class SearchEngineTest extends MediaWikiLangTestCase {
                                        $name,
                                        $type
                                ] )->getMock();
+
                        $mockField->expects( $this->any() )->method( 'getMapping' )->willReturn( [
                                'testData' => 'test',
                                'name' => $name,
                                'type' => $type,
                        ] );
+
+                       $mockField->expects( $this->any() )
+                               ->method( 'merge' )
+                               ->willReturn( $mockField );
+
                        return $mockField;
                };
 
@@ -185,8 +191,12 @@ class SearchEngineTest extends MediaWikiLangTestCase {
                        ->willReturnCallback( $mockFieldBuilder );
 
                // Not using mock since PHPUnit mocks do not work properly with references in params
-               $this->mergeMwGlobalArrayValue( 'wgHooks',
-                       [ 'SearchIndexFields' => [ [ $this, 'hookSearchIndexFields', $mockFieldBuilder ] ] ] );
+               $this->setTemporaryHook( 'SearchIndexFields',
+                       function ( &$fields, SearchEngine $engine ) use ( $mockFieldBuilder ) {
+                               $fields['testField'] =
+                                       $mockFieldBuilder( "testField", SearchIndexField::INDEX_TYPE_TEXT );
+                               return true;
+                       } );
 
                $fields = $mockEngine->getSearchIndexFields();
                $this->assertArrayHasKey( 'language', $fields );
@@ -197,9 +207,4 @@ class SearchEngineTest extends MediaWikiLangTestCase {
                $this->assertArrayHasKey( 'testData', $mapping );
                $this->assertEquals( 'test', $mapping['testData'] );
        }
-
-       public function hookSearchIndexFields( $mockFieldBuilder, &$fields, SearchEngine $engine ) {
-               $fields['testField'] = $mockFieldBuilder( "testField", SearchIndexField::INDEX_TYPE_TEXT );
-               return true;
-       }
 }