Merge "Add CLDRPluralRuleError, added in parent commit, to the AutoLoader"
[lhc/web/wiklou.git] / tests / phpunit / includes / media / FormatMetadataTest.php
index 57d5d6f..6ade670 100644 (file)
@@ -1,12 +1,31 @@
 <?php
 class FormatMetadataTest extends MediaWikiTestCase {
-       public function testInvalidDate() {
+       public function setUp() {
                if ( !wfDl( 'exif' ) ) {
-                       $this->markTestIncomplete( "This test needs the exif extension." );
+                       $this->markTestSkipped( "This test needs the exif extension." );
                }
-               
-               $file = UnregisteredLocalFile::newFromPath( dirname( __FILE__ ) . 
-                       '/broken_exif_date.jpg', 'image/jpeg' );
+               $filePath = __DIR__ .  '/../../data/media';
+               $this->backend = new FSFileBackend( array(
+                       'name'           => 'localtesting',
+                       'lockManager'    => 'nullLockManager',
+                       'containerPaths' => array( 'data' => $filePath )
+               ) );
+               $this->repo = new FSRepo( array(
+                       'name'    => 'temp',
+                       'url'     => 'http://localhost/thumbtest',
+                       'backend' => $this->backend
+               ) );
+               global $wgShowEXIF;
+               $this->show = $wgShowEXIF;
+               $wgShowEXIF = true;
+       }
+       public function tearDown() {
+               global $wgShowEXIF;
+               $wgShowEXIF = $this->show;
+       }
+
+       public function testInvalidDate() {
+               $file = $this->dataFile( 'broken_exif_date.jpg', 'image/jpeg' );
                
                // Throws an error if bug hit
                $meta = $file->formatMetadata();
@@ -25,4 +44,9 @@ class FormatMetadataTest extends MediaWikiTestCase {
                        $meta['visible'][$dateIndex]['value'],
                        'File with invalid date metadata (bug 29471)' );
        }
+
+       private function dataFile( $name, $type ) {
+               return new UnregisteredLocalFile( false, $this->repo,
+                       "mwstore://localtesting/data/$name", $type );
+       }
 }