From ca32f08966f1b51fcb19460f0996bb0c4048e6fe Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sat, 3 Dec 2011 13:29:22 +0100 Subject: Update to MediaWiki 1.18.0 * also update ArchLinux skin to chagnes in MonoBook * Use only css to hide our menu bar when printing --- .../includes/media/SVGMetadataExtractorTest.php | 88 ++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 tests/phpunit/includes/media/SVGMetadataExtractorTest.php (limited to 'tests/phpunit/includes/media/SVGMetadataExtractorTest.php') diff --git a/tests/phpunit/includes/media/SVGMetadataExtractorTest.php b/tests/phpunit/includes/media/SVGMetadataExtractorTest.php new file mode 100644 index 00000000..c2c81b98 --- /dev/null +++ b/tests/phpunit/includes/media/SVGMetadataExtractorTest.php @@ -0,0 +1,88 @@ +assertMetadata( $infile, $expected ); + } + + /** + * @dataProvider providerSvgFilesWithXMLMetadata + */ + function testGetXMLMetadata( $infile, $expected ) { + $r = new XMLReader(); + if( !method_exists( $r, 'readInnerXML' ) ) { + $this->markTestSkipped( 'XMLReader::readInnerXML() does not exist (libxml >2.6.20 needed).' ); + return; + } + $this->assertMetadata( $infile, $expected ); + } + + function assertMetadata( $infile, $expected ) { + try { + $data = SVGMetadataExtractor::getMetadata( $infile ); + $this->assertEquals( $expected, $data, 'SVG metadata extraction test' ); + } catch ( MWException $e ) { + if ( $expected === false ) { + $this->assertTrue( true, 'SVG metadata extracted test (expected failure)' ); + } else { + throw $e; + } + } + } + + function providerSvgFiles() { + $base = dirname( __FILE__ ) . '/../../data/media'; + return array( + array( + "$base/Wikimedia-logo.svg", + array( + 'width' => 1024, + 'height' => 1024 + ) + ), + array( + "$base/QA_icon.svg", + array( + 'width' => 60, + 'height' => 60 + ) + ), + array( + "$base/Gtk-media-play-ltr.svg", + array( + 'width' => 60, + 'height' => 60 + ) + ), + ); + } + + function providerSvgFilesWithXMLMetadata() { + $base = dirname( __FILE__ ) . '/../../data/media'; + return array( + array( + "$base/US_states_by_total_state_tax_revenue.svg", + array( + 'height' => 593, + 'metadata' => + ' + + image/svg+xml + + + ', + 'width' => 959 + ) + ), + ); + } +} + -- cgit v1.2.2