mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/rexml/formatters/pretty.rb
(REXML::Formatters::Pretty#write_text), test/rexml/test_core.rb (Tester#test_pretty_format_long_text_finite): don't ignore 'width' parameter in pretty formatter. fixes #4498 Reported by Michael Frasca. Thanks!!! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
962956e8a1
commit
da672779e2
3 changed files with 71 additions and 1 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
Sat Jun 11 16:28:25 2011 Kouhei Sutou <kou@cozmixng.org>
|
||||||
|
|
||||||
|
* lib/rexml/formatters/pretty.rb
|
||||||
|
(REXML::Formatters::Pretty#write_text),
|
||||||
|
test/rexml/test_core.rb
|
||||||
|
(Tester#test_pretty_format_long_text_finite): don't ignore
|
||||||
|
'width' parameter in pretty formatter. fixes #4498
|
||||||
|
Reported by Michael Frasca. Thanks!!!
|
||||||
|
|
||||||
Sat Jun 11 16:11:36 2011 Kouhei Sutou <kou@cozmixng.org>
|
Sat Jun 11 16:11:36 2011 Kouhei Sutou <kou@cozmixng.org>
|
||||||
|
|
||||||
* test/rexml/test_core.rb
|
* test/rexml/test_core.rb
|
||||||
|
|
|
@ -88,7 +88,7 @@ module REXML
|
||||||
s = node.to_s()
|
s = node.to_s()
|
||||||
s.gsub!(/\s/,' ')
|
s.gsub!(/\s/,' ')
|
||||||
s.squeeze!(" ")
|
s.squeeze!(" ")
|
||||||
s = wrap(s, 80-@level)
|
s = wrap(s, @width - @level)
|
||||||
s = indent_text(s, @level, " ", true)
|
s = indent_text(s, @level, " ", true)
|
||||||
output << (' '*@level + s)
|
output << (' '*@level + s)
|
||||||
end
|
end
|
||||||
|
|
|
@ -1153,6 +1153,67 @@ EOL
|
||||||
output)
|
output)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_pretty_format_deep_indent
|
||||||
|
n = 6
|
||||||
|
elements = ""
|
||||||
|
n.times do |i|
|
||||||
|
elements << "<element#{i}>"
|
||||||
|
elements << "element#{i} " * 5
|
||||||
|
end
|
||||||
|
(n - 1).downto(0) do |i|
|
||||||
|
elements << "</element#{i}>"
|
||||||
|
end
|
||||||
|
xml = "<doc>#{elements}</doc>"
|
||||||
|
document = REXML::Document.new(xml)
|
||||||
|
formatter = REXML::Formatters::Pretty.new
|
||||||
|
formatter.width = 20
|
||||||
|
output = ""
|
||||||
|
formatter.write(document, output)
|
||||||
|
assert_equal(<<-XML.strip, output)
|
||||||
|
<doc>
|
||||||
|
<element0>
|
||||||
|
element0
|
||||||
|
element0
|
||||||
|
element0
|
||||||
|
element0
|
||||||
|
element0
|
||||||
|
<element1>
|
||||||
|
element1
|
||||||
|
element1
|
||||||
|
element1
|
||||||
|
element1
|
||||||
|
element1
|
||||||
|
<element2>
|
||||||
|
element2
|
||||||
|
element2
|
||||||
|
element2
|
||||||
|
element2
|
||||||
|
element2
|
||||||
|
<element3>
|
||||||
|
element3
|
||||||
|
element3
|
||||||
|
element3
|
||||||
|
element3
|
||||||
|
element3
|
||||||
|
<element4>
|
||||||
|
element4
|
||||||
|
element4
|
||||||
|
element4
|
||||||
|
element4
|
||||||
|
element4
|
||||||
|
|
||||||
|
<element5>
|
||||||
|
element5 element5 element5 element5 element5
|
||||||
|
</element5>
|
||||||
|
</element4>
|
||||||
|
</element3>
|
||||||
|
</element2>
|
||||||
|
</element1>
|
||||||
|
</element0>
|
||||||
|
</doc>
|
||||||
|
XML
|
||||||
|
end
|
||||||
|
|
||||||
def test_ticket_58
|
def test_ticket_58
|
||||||
doc = REXML::Document.new
|
doc = REXML::Document.new
|
||||||
doc << REXML::XMLDecl.default
|
doc << REXML::XMLDecl.default
|
||||||
|
|
Loading…
Add table
Reference in a new issue