# File test/contrib_test.rb, line 107 def test_complex_xpath_Tobias source = "\t\t<root>\n\t\t\t<foo>\n\t\t\t\t<bar style=\"baz\"/>\n\t\t\t\t<blah style=\"baz\"/>\n\t\t\t\t<blam style=\"baz\"/>\n\t\t\t</foo>\n\t\t\t<wax>\n\t\t\t\t<fudge>\n\t\t\t\t\t<noodle/>\n\t\t\t\t</fudge>\n\t\t\t</wax>\n\t\t</root>\n" complex_path = "*[* "+ "and not(*/node()) "+ "and not(*[not(@style)]) "+ "and not(*/@style != */@style)]" doc = REXML::Document.new source results = REXML::XPath.match( doc.root, complex_path ) assert_not_nil results assert_equal 1, results.size assert_equal "foo", results[0].name end