# File test/core_test.rb, line 104 def test_whitespace doc = Document.new "<root-element><first-element/></root-element>" assert_equal 1, doc.root.size assert_equal 1, doc.root.elements.size doc = Document.new "<root-element> <first-element/> </root-element>" assert_equal 3, doc.root.size assert_equal 1, doc.root.elements.size text = " This is text with a lot of whitespace " source = "<a>#{text}<b>#{text}</b><c>#{text}</c>#{text}</a>" doc = Document.new( source, { respect_whitespace:respect_whitespace => } a c } } ) assert_equal text, doc.elements["//c"].text string = "" doc.root.each { |n| string << n.to_s if n.kind_of? Text } assert_equal text+text, string string =" lots of blank space" doc.root.add_element("d").add_element("c").text = string doc.root.add_element("e").text = string assert_equal string, doc.elements["/a/d/c"].text assert string != doc.elements["/a/e"].text, "Text wasn't properly compressed" doc = Document.new source, { respect_whitespace:respect_whitespace => all:all } doc.root.add_element("d").text = string assert_equal text, doc.root.text nxt = "" doc.root.each { |n| nxt << n.to_s if n.kind_of? Text } assert_equal text+text, nxt assert_equal text, doc.root.elements["b"].text assert_equal text, doc.root.elements["c"].text assert_equal string, doc.root.elements["d"].text end