mirror of
https://github.com/ruby/ruby.git
synced 2025-09-17 09:33:59 +02:00

-- * test/rexml/: import REXML tests from http://www.germane-software.com/repos/rexml/trunk/test/. Many tests are failed temporary. I'll fix them quickly. Sorry. -- * test/rexml/test_listener.rb: remove needless codes. -- * test/rexml/: fix fixture data path. All REXML tests are worked. -- * test/rexml/: untabify. -- * test/rexml/test_core.rb: enable. -- * test/rexml/test_sax.rb: don't use thread and sleep to avoid slow test. -- * lib/rexml/xpath_parser.rb, test/rexml/test_xpath.rb: add missing method availability check. [ruby-core:32447] Reported by Wiebe Cazemier. Thanks!!! -- Specify external encoding. When external encoding is not specified, it uses default external encoding. But it depends the environment. So specify as UTF-8 for environments whose locale is not UTF-8. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@29915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
38 lines
939 B
Ruby
38 lines
939 B
Ruby
# ISSUE 32
|
|
require 'test/unit'
|
|
require 'rexml/document'
|
|
|
|
# daz - for report by Dan Kohn in:
|
|
# http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/156328
|
|
class XPathTesterDd < Test::Unit::TestCase
|
|
include REXML
|
|
|
|
def setup
|
|
@@docDd = Document.new(<<-EOS, :ignore_whitespace_nodes => :all)
|
|
<a>
|
|
<b x='ab01A'>
|
|
<c y='abc01A'>Success</c>
|
|
</b>
|
|
<b x='ab02A' y='ab02B'>
|
|
<c>abc02C</c>
|
|
</b>
|
|
</a>
|
|
EOS
|
|
end
|
|
|
|
def test_Dd_preceding_sibling_children
|
|
arr = []
|
|
XPath.each(@@docDd, "//b[@x='ab02A']/preceding-sibling::b/child::*") do |cell|
|
|
arr << cell.texts.join
|
|
end
|
|
assert_equal( 'Success', arr.join )
|
|
end
|
|
|
|
def test_Dd_preceding_sibling_all
|
|
arr = []
|
|
XPath.each(@@docDd, "//b[@x='ab02A']/preceding-sibling::*") do |cell|
|
|
arr << cell.to_s
|
|
end
|
|
assert_equal( "<b x='ab01A'><c y='abc01A'>Success</c></b>", arr.join )
|
|
end
|
|
end
|