assertEquals("x/y(((@d = 23.0) or (text() = 'ddd')) and (@h = 'rrr'))", SelectorStepBuilder.toString(steps));
assertFalse(steps[0].accessesText());
assertTrue(steps[1].accessesText());
SAXElement y = new SAXElement(null, "y");
y.setAttribute("d", "2");
y.addText("dd");
y.setAttribute("h", "rr");
assertFalse(steps[1].getPredicatesEvaluator().evaluate(y, null));
y = new SAXElement(null, "y");
y.setAttribute("d", "23");
y.addText("dd");
y.setAttribute("h", "rr");
assertFalse(steps[1].getPredicatesEvaluator().evaluate(y, null));
y = new SAXElement(null, "y");
y.setAttribute("d", "23");
y.addText("dd");
y.setAttribute("h", "rrr");
assertTrue(steps[1].getPredicatesEvaluator().evaluate(y, null));
y = new SAXElement(null, "y");
y.setAttribute("d", "2");
y.addText("dd");
y.setAttribute("h", "rrr");
assertFalse(steps[1].getPredicatesEvaluator().evaluate(y, null));
y = new SAXElement(null, "y");
y.setAttribute("d", "2");
y.addText("ddd");
y.setAttribute("h", "rrr");
assertTrue(steps[1].getPredicatesEvaluator().evaluate(y, null));
}