Merge pull request #10 from kesselb/master

Add test case for !$reader->read then break
This commit is contained in:
Robin Appelman 2019-11-06 16:16:40 +00:00 committed by GitHub
commit 9b78893f83
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 38 additions and 3 deletions

View file

@ -177,4 +177,17 @@ class QueryParserTest extends TestCase {
new Order('{DAV:}getcontentlength', \SearchDAV\Query\Order::ASC) new Order('{DAV:}getcontentlength', \SearchDAV\Query\Order::ASC)
], $search->orderBy); ], $search->orderBy);
} }
/**
* @expectedException \Sabre\Xml\LibXMLException
* @expectedExceptionMessage Opening and ending tag mismatch: prop line 17 and gt
* on line 19, column 20
*
* @throws \Sabre\Xml\ParseException
*/
public function testParseWhereBroken()
{
$query = file_get_contents(__DIR__ . '/invalidwherebroken.xml');
(new QueryParser())->parse($query, null, $rootElementName);
}
} }

View file

@ -0,0 +1,22 @@
<?xml version="1.0"?>
<d:searchrequest xmlns:d="DAV:" xmlns:oc="http://ns.nextcloud.com">
<d:basicsearch>
<d:select>
<d:prop>
<d:getcontentlength/>
</d:prop>
</d:select>
<d:from>
<d:scope>
<d:href>/container1/</d:href>
<d:depth>infinity</d:depth>
</d:scope>
</d:from>
<d:where>
<d:gt>
<d:prop>
<d:literal>5</d:literal>
</d:gt>
</d:where>
</d:basicsearch>
</d:searchrequest>