Add regression test for bug #73053

The test succeeds with libxml < 2.9.4, and is supposed to succeed with
libxml > 2.9.4. Unfortunately, we can't conditionally mark a test case
as XFAIL, so we're simply skipping the test for libxml 2.9.4 instead.
This commit is contained in:
Christoph M. Becker 2016-09-11 00:06:45 +02:00
parent 6c9d37d059
commit 326a4e38fb
3 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,21 @@
--TEST--
Bug #73053 (XML reader with setSchema now fails under 5.6.25)
--SKIPIF--
<?php
if (!extension_loaded('xmlreader')) die('skip xmlreader extension not available');
if (LIBXML_VERSION === 20904) die('skip fails with libxml 2.9.4');
?>
--FILE--
<?php
$xmlfile = __DIR__ . DIRECTORY_SEPARATOR . 'bug73053.xml';
$xsdfile = __DIR__ . DIRECTORY_SEPARATOR . 'bug73053.xsd';
$xml = new XMLReader();
var_dump($xml->open($xmlfile, null, LIBXML_PARSEHUGE));
$xml->setSchema($xsdfile);
while($xml->read());
?>
===DONE===
--EXPECT--
bool(true)
===DONE===

View File

@ -0,0 +1,11 @@
<?xml version="1.0"?>
<x:books xmlns:x="urn:books">
<book id="1">
<author>Writer</author>
<title>The First Book</title>
<genre>Fiction</genre>
<price>44.95</price>
<pub_date>2000-10-01</pub_date>
<review>An amazing story of nothing.</review>
</book>
</x:books>

View File

@ -0,0 +1,27 @@
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:books"
xmlns:bks="urn:books">
<xsd:element name="books" type="bks:BooksForm"/>
<xsd:complexType name="BooksForm">
<xsd:sequence>
<xsd:element name="book"
type="bks:BookForm"
minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="BookForm">
<xsd:sequence>
<xsd:element name="author" type="xsd:string"/>
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="genre" type="xsd:string"/>
<xsd:element name="price" type="xsd:float" />
<xsd:element name="pub_date" type="xsd:date" />
<xsd:element name="review" type="xsd:string"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:positiveInteger"/>
</xsd:complexType>
</xsd:schema>