6 class ExifTest
extends MediaWikiTestCase
{
11 protected function setUp() {
13 if ( !extension_loaded( 'exif' ) ) {
14 $this->markTestSkipped( "This test needs the exif extension." );
17 $this->mediaPath
= __DIR__
. '/../../data/media/';
19 $this->setMwGlobals( 'wgShowEXIF', true );
22 public function testGPSExtraction() {
23 $filename = $this->mediaPath
. 'exif-gps.jpg';
24 $seg = JpegMetadataExtractor
::segmentSplitter( $filename );
25 $exif = new Exif( $filename, $seg['byteOrder'] );
26 $data = $exif->getFilteredData();
28 'GPSLatitude' => 88.5180555556,
29 'GPSLongitude' => -21.12357,
30 'GPSAltitude' => -3.141592653,
32 'GPSVersionID' => '2.2.0.0',
34 $this->assertEquals( $expected, $data, '', 0.0000000001 );
37 public function testUnicodeUserComment() {
38 $filename = $this->mediaPath
. 'exif-user-comment.jpg';
39 $seg = JpegMetadataExtractor
::segmentSplitter( $filename );
40 $exif = new Exif( $filename, $seg['byteOrder'] );
41 $data = $exif->getFilteredData();
44 'UserComment' => 'testâcomment'
46 $this->assertEquals( $expected, $data );