diff options
author | daniel <dkinzler@wikimedia.org> | 2021-04-09 17:18:14 +0200 |
---|---|---|
committer | Daniel Kinzler <dkinzler@wikimedia.org> | 2021-04-16 11:01:33 +0000 |
commit | e0000ce1761fcac1b79e023760bbc550c979d9d1 (patch) | |
tree | 3c67f19c968d8d28e5910372cabbaff0822a9983 /tests/phpunit/includes/filerepo/file/FileTest.php | |
parent | 085a1ef4cec3b868f4d10d8e6bdf4c433ec9e396 (diff) | |
download | mediawikicore-e0000ce1761fcac1b79e023760bbc550c979d9d1.tar.gz mediawikicore-e0000ce1761fcac1b79e023760bbc550c979d9d1.zip |
RepoGroup: replace Title in method signatures
Bug: T278459
Change-Id: Icee70d3743b321b25c046429e8738fffa6a657de
Diffstat (limited to 'tests/phpunit/includes/filerepo/file/FileTest.php')
-rw-r--r-- | tests/phpunit/includes/filerepo/file/FileTest.php | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/phpunit/includes/filerepo/file/FileTest.php b/tests/phpunit/includes/filerepo/file/FileTest.php index 76be387442ff..590ed89c0f49 100644 --- a/tests/phpunit/includes/filerepo/file/FileTest.php +++ b/tests/phpunit/includes/filerepo/file/FileTest.php @@ -1,5 +1,7 @@ <?php +use MediaWiki\Page\PageIdentityValue; + class FileTest extends MediaWikiMediaTestCase { /** @@ -442,4 +444,41 @@ class FileTest extends MediaWikiMediaTestCase { ], ]; } + + public function provideNormalizeTitle() { + yield [ 'some name.jpg', 'Some_name.jpg' ]; + yield [ new TitleValue( NS_FILE, 'Some_name.jpg' ), 'Some_name.jpg' ]; + yield [ new TitleValue( NS_MEDIA, 'Some_name.jpg' ), 'Some_name.jpg' ]; + yield [ new PageIdentityValue( 0, NS_FILE, 'Some_name.jpg', false ), 'Some_name.jpg' ]; + } + + /** + * @covers File::normalizeTitle + * @dataProvider provideNormalizeTitle + */ + public function testNormalizeTitle( $title, $expected ) { + $actual = File::normalizeTitle( $title ); + + $this->assertSame( NS_FILE, $actual->getNamespace() ); + $this->assertSame( $expected, $actual->getDBkey() ); + } + + public function provideNormalizeTitleFails() { + yield [ '' ]; + yield [ '#' ]; + yield [ new TitleValue( NS_USER, 'Some_name.jpg' ) ]; + yield [ new PageIdentityValue( 0, NS_USER, 'Some_name.jpg', false ) ]; + } + + /** + * @covers File::normalizeTitle + * @dataProvider provideNormalizeTitleFails + */ + public function testNormalizeTitleFails( $title ) { + $actual = File::normalizeTitle( $title ); + $this->assertNull( $actual ); + + $this->expectException( MWException::class ); + File::normalizeTitle( $title, 'exception' ); + } } |