mediaPath = __DIR__ . '/../../data/media/'; } /** * Put in a file, and see if the metadata coming out is as expected. * @param $filename String * @param $expected Array The extracted metadata. * @dataProvider provideGetMetadata * @covers GIFMetadataExtractor::getMetadata */ public function testGetMetadata( $filename, $expected ) { $actual = GIFMetadataExtractor::getMetadata( $this->mediaPath . $filename ); $this->assertEquals( $expected, $actual ); } public static function provideGetMetadata() { $xmpNugget = << The interwebs Bawolff A file to test GIF EOF; $xmpNugget = str_replace( "\r", '', $xmpNugget ); // Windows compat return array( array( 'nonanimated.gif', array( 'comment' => array( 'GIF test file ⁕ Created with GIMP' ), 'duration' => 0.1, 'frameCount' => 1, 'looped' => false, 'xmp' => '', ) ), array( 'animated.gif', array( 'comment' => array( 'GIF test file . Created with GIMP' ), 'duration' => 2.4, 'frameCount' => 4, 'looped' => true, 'xmp' => '', ) ), array( 'animated-xmp.gif', array( 'xmp' => $xmpNugget, 'duration' => 2.4, 'frameCount' => 4, 'looped' => true, 'comment' => array( 'GIƒ·test·file' ), ) ), ); } }