summaryrefslogtreecommitdiff
path: root/www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php')
-rw-r--r--www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php40
1 files changed, 40 insertions, 0 deletions
diff --git a/www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php b/www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php
new file mode 100644
index 00000000..78e09e60
--- /dev/null
+++ b/www/wiki/tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * @group GlobalFunctions
+ * @covers ::wfBaseName
+ */
+class WfBaseNameTest extends MediaWikiTestCase {
+ /**
+ * @dataProvider providePaths
+ */
+ public function testBaseName( $fullpath, $basename ) {
+ $this->assertEquals( $basename, wfBaseName( $fullpath ),
+ "wfBaseName('$fullpath') => '$basename'" );
+ }
+
+ public static function providePaths() {
+ return [
+ [ '', '' ],
+ [ '/', '' ],
+ [ '\\', '' ],
+ [ '//', '' ],
+ [ '\\\\', '' ],
+ [ 'a', 'a' ],
+ [ 'aaaa', 'aaaa' ],
+ [ '/a', 'a' ],
+ [ '\\a', 'a' ],
+ [ '/aaaa', 'aaaa' ],
+ [ '\\aaaa', 'aaaa' ],
+ [ '/aaaa/', 'aaaa' ],
+ [ '\\aaaa\\', 'aaaa' ],
+ [ '\\aaaa\\', 'aaaa' ],
+ [
+ '/mnt/upload3/wikipedia/en/thumb/8/8b/'
+ . 'Zork_Grand_Inquisitor_box_cover.jpg/93px-Zork_Grand_Inquisitor_box_cover.jpg',
+ '93px-Zork_Grand_Inquisitor_box_cover.jpg'
+ ],
+ [ 'C:\\Progra~1\\Wikime~1\\Wikipe~1\\VIEWER.EXE', 'VIEWER.EXE' ],
+ [ 'Östergötland_coat_of_arms.png', 'Östergötland_coat_of_arms.png' ],
+ ];
+ }
+}