MediaWiki
REL1_21
|
00001 <?php 00002 class ExifTest extends MediaWikiTestCase { 00003 00004 protected function setUp() { 00005 parent::setUp(); 00006 00007 $this->mediaPath = __DIR__ . '/../../data/media/'; 00008 00009 if ( !wfDl( 'exif' ) ) { 00010 $this->markTestSkipped( "This test needs the exif extension." ); 00011 } 00012 00013 $this->setMwGlobals( 'wgShowEXIF', true ); 00014 } 00015 00016 public function testGPSExtraction() { 00017 $filename = $this->mediaPath . 'exif-gps.jpg'; 00018 $seg = JpegMetadataExtractor::segmentSplitter( $filename ); 00019 $exif = new Exif( $filename, $seg['byteOrder'] ); 00020 $data = $exif->getFilteredData(); 00021 $expected = array( 00022 'GPSLatitude' => 88.5180555556, 00023 'GPSLongitude' => -21.12357, 00024 'GPSAltitude' => -3.141592653, 00025 'GPSDOP' => '5/1', 00026 'GPSVersionID' => '2.2.0.0', 00027 ); 00028 $this->assertEquals( $expected, $data, '', 0.0000000001 ); 00029 } 00030 00031 public function testUnicodeUserComment() { 00032 $filename = $this->mediaPath . 'exif-user-comment.jpg'; 00033 $seg = JpegMetadataExtractor::segmentSplitter( $filename ); 00034 $exif = new Exif( $filename, $seg['byteOrder'] ); 00035 $data = $exif->getFilteredData(); 00036 00037 $expected = array( 00038 'UserComment' => 'testâcomment' 00039 ); 00040 $this->assertEquals( $expected, $data ); 00041 } 00042 00043 00044 }