mirror of
https://github.com/ruby/ruby.git
synced 2025-08-25 05:55:46 +02:00
* lib/rexml/xmltokens.rb: Add missing non ASCII valid characters
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
This commit is contained in:
parent
44a9509f2f
commit
ba5ed845b3
3 changed files with 122 additions and 5 deletions
40
test/rexml/xpath/test_node.rb
Normal file
40
test/rexml/xpath/test_node.rb
Normal file
|
@ -0,0 +1,40 @@
|
|||
# -*- 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
|
Loading…
Add table
Add a link
Reference in a new issue