PASS ancestor::* (context = attr1)
PASS ancestor::* (context = GCHILD11)
PASS ancestor::node() (context = attr1)
PASS ancestor::node() (context = GCHILD11)
PASS preceding::node() (context = attr4)
PASS preceding::node() (context = CHILD2)
PASS preceding::node() (context = GCHILD12)
PASS following::node() (context = attr1)
PASS following::node() (context = CHILD1)
PASS following::node() (context = GCHILD11)
PASS following::node() (context = CHILD2)
PASS //CHILD | //@attr1
PASS //CHILD | //@attr1 | //*[@name='GCHILD12'] | //@attr31
PASS (//CHILD | //@attr1 | //*[@name='GCHILD12'] | //@attr31)[3]
PASS (//CHILD | //@attr1 | //*[@name='GCHILD12'] | //@attr31)[position() = last()]
PASS //CHILD[2]/GCHILD | //CHILD[1]/GCHILD
PASS doc.evaluate("string(//*[@name='GCHILD12'] | //CHILD | //@attr1 | //@attr31)", doc, null, XPathResult.STRING_TYPE, null).stringValue is "TEXT1"
PASS descendant::node() (context = attr1)
PASS child::node() (context = attr1)
PASS parent::node() (context = attr1)
PASS following-sibling::node() (context = attr1)
PASS preceding-sibling::node() (context = attr4)
PASS attribute::node() (context = attr1)
PASS self::node() (context = attr1)
PASS self::* (context = attr1)
PASS descendant-or-self::node() (context = attr1)
PASS ancestor-or-self::node() (context = attr1)
PASS successfullyParsed is true
TEST COMPLETE