aboutsummaryrefslogtreecommitdiffstats
path: root/test/rexml/test_core.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rexml/test_core.rb')
-rw-r--r--test/rexml/test_core.rb61
1 files changed, 61 insertions, 0 deletions
diff --git a/test/rexml/test_core.rb b/test/rexml/test_core.rb
index bcc72695e4..e530cc16c6 100644
--- a/test/rexml/test_core.rb
+++ b/test/rexml/test_core.rb
@@ -1153,6 +1153,67 @@ EOL
output)
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
doc = REXML::Document.new
doc << REXML::XMLDecl.default