diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2014-03-28 05:41:12 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2014-03-28 05:41:12 +0100 |
commit | 9441dde8bfb95277df073717ed7817dced40f948 (patch) | |
tree | ba31c10147e91bda378b77c8cae90c5651af9bfe /tests/phpunit/docs | |
parent | d417de70fcf39e0a7a15ba780b597914d16ca0f7 (diff) |
Update to MediaWiki 1.22.5
Diffstat (limited to 'tests/phpunit/docs')
-rw-r--r-- | tests/phpunit/docs/ExportDemoTest.php | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/phpunit/docs/ExportDemoTest.php b/tests/phpunit/docs/ExportDemoTest.php new file mode 100644 index 00000000..b09487a6 --- /dev/null +++ b/tests/phpunit/docs/ExportDemoTest.php @@ -0,0 +1,39 @@ +<?php +/** + * Test for the demo xml + * + * @group Dump + */ +class ExportDemoTest extends DumpTestCase { + + /** + * @group large + */ + function testExportDemo() { + $this->validateXmlFileAgainstXsd( "../../docs/export-demo.xml" ); + } + + /** + * Validates a xml file against the xsd. + * + * The validation is slow, because php has to read the xsd on each call. + * + * @param $fname string: name of file to validate + */ + protected function validateXmlFileAgainstXsd( $fname ) { + $version = WikiExporter::schemaVersion(); + + $dom = new DomDocument(); + $dom->load( $fname ); + + // Ensure, the demo is for the current version + $this->assertEquals( $dom->documentElement->getAttribute( 'version' ), $version, 'export-demo.xml should have the current version' ); + + try { + $this->assertTrue( $dom->schemaValidate( "../../docs/export-" . $version . ".xsd" ), + "schemaValidate has found an error" ); + } catch ( Exception $e ) { + $this->fail( "xml not valid against xsd: " . $e->getMessage() ); + } + } +} |