HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/stielman.komma.nl/vendor/phpbench/dom/tests/Unit/XPathTest.php
<?php

/*
 * This file is part of the PhpBench DOM  package
 *
 * (c) Daniel Leech <daniel@dantleech.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace PhpBench\Dom\Tests\Unit;

use PhpBench\Dom\Document;

class XPathTest extends \PHPUnit_Framework_TestCase
{
    /**
     * It should throw an exception if the xpath query is invalid.
     *
     * @expectedException PhpBench\Dom\Exception\InvalidQueryException
     * @expectedExceptionMessage Errors encountered
     */
    public function testQueryException()
    {
        $this->getDocument()->query('//article[noexistfunc() = "as"]');
    }

    /**
     * It should NOT throw an exception if the expression evaluates as false.
     */
    public function testEvaluateFalse()
    {
        $result = $this->getDocument()->evaluate('boolean(count(//foo))');
        $this->assertFalse($result);
    }

    private function getDocument()
    {
        $xml = <<<EOT
<?xml version="1.0"?>
<document>
    <article id="1">
        <title>Morning</title>
    </article>
    <article id="2">
        <title>Afternoon</title>
    </article>
</document>
EOT;

        $document = new Document();
        $document->loadXml($xml);

        return $document;
    }
}