Merge "Restore ApiQueryUserInfo::getBlockInfo() as a stub."
[lhc/web/wiklou.git] / tests / phpunit / includes / api / ApiQueryPrefixSearchTest.php
index ae5924d..cb5e76d 100644 (file)
@@ -3,10 +3,28 @@
 /**
  * @group API
  * @group medium
+ * @group Database
  *
  * @covers ApiQueryPrefixSearch
  */
 class ApiQueryPrefixSearchTest extends ApiTestCase {
+       const TEST_QUERY = 'unittest';
+
+       public function setUp() {
+               parent::setUp();
+               $this->setMwGlobals( [
+                       'wgSearchType' => MockCompletionSearchEngine::class,
+               ] );
+               MockCompletionSearchEngine::clearMockResults();
+               $results = [];
+               foreach ( range( 0, 10 ) as $i ) {
+                       $title = "Search_Result_$i";
+                       $results[] = $title;
+                       $this->editPage( $title, 'hi there' );
+               }
+               MockCompletionSearchEngine::addMockResults( self::TEST_QUERY, $results );
+       }
+
        public function offsetContinueProvider() {
                return [
                        'no offset' => [ 2, 2, 0, 2 ],
@@ -20,11 +38,10 @@ class ApiQueryPrefixSearchTest extends ApiTestCase {
         * @dataProvider offsetContinueProvider
         */
        public function testOffsetContinue( $expectedOffset, $expectedResults, $offset, $limit ) {
-               $this->registerMockSearchEngine();
                $response = $this->doApiRequest( [
                        'action' => 'query',
                        'list' => 'prefixsearch',
-                       'pssearch' => 'example query terms',
+                       'pssearch' => self::TEST_QUERY,
                        'psoffset' => $offset,
                        'pslimit' => $limit,
                ] );
@@ -39,10 +56,4 @@ class ApiQueryPrefixSearchTest extends ApiTestCase {
                        $this->assertEquals( $expectedOffset, $result['continue']['psoffset'] );
                }
        }
-
-       private function registerMockSearchEngine() {
-               $this->setMwGlobals( [
-                       'wgSearchType' => MockCompletionSearchEngine::class,
-               ] );
-       }
 }