* Allow passing in a blacklist into wfIsBadImage()
[lhc/web/wiklou.git] / tests / phpunit / includes / GlobalFunctions / GlobalTest.php
index b2b8448..25581de 100644 (file)
@@ -935,6 +935,28 @@ class GlobalTest extends MediaWikiTestCase {
                );
        }
 
+       /**
+        * @dataProvider provideWfIsBadImageList
+        */
+       function testWfIsBadImage( $name, $title, $blacklist, $expected, $desc ) {
+               $this->assertEquals( $expected, wfIsBadImage( $name, $title, $blacklist ), $desc );
+       }
+
+       function provideWfIsBadImageList() {
+               $blacklist = '* [[File:Bad.jpg]] except [[Nasty page]]';
+               return array(
+                       array( 'Bad.jpg', false, $blacklist, true,
+                               'Called on a bad image' ),
+                       array( 'Bad.jpg', Title::makeTitle( NS_MAIN, 'A page' ), $blacklist, true,
+                               'Called on a bad image' ),
+                       array( 'NotBad.jpg', false, $blacklist, false,
+                               'Called on a non-bad image' ),
+                       array( 'Bad.jpg', Title::makeTitle( NS_MAIN, 'Nasty page' ), $blacklist, false,
+                               'Called on a bad image but is on a whitelisted page' ),
+                       array( 'File:Bad.jpg', false, $blacklist, false,
+                               'Called on a bad image with File:' ),
+               );
+       }
        /* TODO: many more! */
 }