This is moderately messy. Process was principally: * xargs rg --files-with-matches '^use Title;' | grep 'php$' | \ xargs -P 1 -n 1 sed -i -z 's/use Title;/use MediaWiki\\Title\\Title;/1' * rg --files-without-match 'MediaWiki\\Title\\Title;' . | grep 'php$' | \ xargs rg --files-with-matches 'Title\b' | \ xargs -P 1 -n 1 sed -i -z 's/\nuse /\nuse MediaWiki\\Title\\Title;\nuse /1' * composer fix Then manual fix-ups for a few files that don't have any use statements. Bug: T166010 Follows-Up: Ia5d8cb759dc3bc9e9bbe217d0fb109e2f8c4101a Change-Id: If8fc9d0d95fc1a114021e282a706fc3e7da3524b
38 lines
919 B
PHP
38 lines
919 B
PHP
<?php
|
|
|
|
use MediaWiki\Title\Title;
|
|
|
|
/**
|
|
* @group API
|
|
* @group Database
|
|
* @group medium
|
|
*
|
|
* @covers ApiQueryAllPages
|
|
*/
|
|
class ApiQueryAllPagesTest extends ApiTestCase {
|
|
/**
|
|
* Test T27702
|
|
* Prefixes of API search requests are not handled with case sensitivity and may result
|
|
* in wrong search results
|
|
*/
|
|
public function testPrefixNormalizationSearchBug() {
|
|
$title = Title::makeTitle( NS_CATEGORY, 'Template:xyz' );
|
|
$this->editPage(
|
|
$title,
|
|
'Some text',
|
|
'inserting content',
|
|
NS_MAIN,
|
|
$this->getTestSysop()->getAuthority()
|
|
);
|
|
|
|
$result = $this->doApiRequest( [
|
|
'action' => 'query',
|
|
'list' => 'allpages',
|
|
'apnamespace' => NS_CATEGORY,
|
|
'apprefix' => 'Template:x' ] );
|
|
|
|
$this->assertArrayHasKey( 'query', $result[0] );
|
|
$this->assertArrayHasKey( 'allpages', $result[0]['query'] );
|
|
$this->assertContains( 'Category:Template:xyz', $result[0]['query']['allpages'][0] );
|
|
}
|
|
}
|