# File test/xpath_test.rb, line 200 def test_more xmlsource = "test/testsrc.xml" xpathtests = "test/xp.tst" doc = REXML::Document.new(File.new(xmlsource)) #results = "" results = REXML::Document.new results.add_element "test-results" for line in File.new(xpathtests) line.strip! begin rt = doc.root #puts "#"*80 print "\nDoing #{line} " ; $stdout.flush doc.elements.each(line) do |el| print "." ; $stdout.flush results.root << el.clone #results << el.to_s end #ObjectSpace.garbage_collect GC::start rescue Exception => z #puts "\n'#{line}' failed" assert_fail "Error on line #{line}:\n#{z.message}\n"+z.backtrace[0,10].join("\n") #results.root.add_element( "error", {"path"=>line}).text = z.message+"\n"+z.backtrace[0,10].join("\n") #results << "<error path='"+line+"'>"+z.message+"</error>" end end #results.elements.each("//error") { |el| # puts "\nERROR:\n\tPath: #{el.attributes['path']}\n\tMessage: #{el.text}" #} #assert_nil results.elements["//error"].name if results.elements["//error"] end