mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
ba5ed845b3
to element name characters. Now, REXML name tokens exactly match "[5] Name" in the XML spec and "[4] NCName" in the Namespaces in XML spec. See comment about the details. [Bug #9539] [ruby-core:60901] Reported by Mario Barcala. Thanks!!! * test/rexml/xpath/test_node.rb: Add tests for the above case. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
40 lines
825 B
Ruby
40 lines
825 B
Ruby
# -*- coding: utf-8 -*-
|
|
|
|
require_relative "../rexml_test_utils"
|
|
|
|
require "rexml/document"
|
|
|
|
class TestXPathNode < Test::Unit::TestCase
|
|
def matches(xml, xpath)
|
|
document = REXML::Document.new(xml)
|
|
REXML::XPath.each(document, xpath).collect(&:to_s)
|
|
end
|
|
|
|
class TestQName < self
|
|
def test_ascii
|
|
xml = <<-XML
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<root>
|
|
<ascii>
|
|
<child>child</child>
|
|
</ascii>
|
|
</root>
|
|
XML
|
|
assert_equal(["<child>child</child>"],
|
|
matches(xml, "/root/ascii/child"))
|
|
end
|
|
|
|
def test_non_ascii
|
|
xml = <<-XML
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<root>
|
|
<non-àscii>
|
|
<child>child</child>
|
|
</non-àscii>
|
|
</root>
|
|
XML
|
|
assert_equal(["<child>child</child>"],
|
|
matches(xml, "/root/non-àscii/child"))
|
|
end
|
|
end
|
|
end
|