Tester\DomQuery nefunkční has() v php8.3

Damo
Člen | 56
+
0
-

Ahoj,

v PHP 8.1 a nette/tester 2.5 pri volání

...
$dom = Tester\DomQuery::fromXml($xml);
var_dump(dom->has("test"));
...

dostanu true, což je očekávané, moje xml má <test> jako root

ale v PHP 8.3 a nette/tester 2.5 dostanu false, ačkoliv jde o stejné xml. true mi to začne vracet az na children.

Kde je problém, že nemůžu zjisti root node? Co se mohlo změnit?

David Grudl
Nette Core | 8218
+
+2
-

To bude souviset se změnou ve verzi 2.5.2, která opravovala chybu, že has() nerespektovalo aktuální element.

has() se ptá na element uvnitř aktuálního, takže pokud $dom obsahuje root, je v pořádku, že has('test') vrací false.

Přidám tam metodu matches()