Keith Fahlgren wrote:
> REXML::XPath.each(a, '//Site/text()') {|el| puts el}
The assert_xpath plugin wraps that up in this convenient method:
class REXML::Element
def inner_text
return self.each_element( './/text()' ){}.join( '' )
end
end
...
def test_absolve_breaks
a = REXML::Document.new("<Site>123
street<br/>amstown<br/>amserland</Site>")
assert_equal "123 streetamstownamserland", a.inner_text
end
Come to think of it, that's not terribly programmer-friendly! Let's upgrade
it a little...
assert_equal "123 streetamstownamserland", a.inner_text
assert_equal "123 street\namstown\namserland", a.inner_text("\n")
...
def inner_text(interstitial = '')
return self.each_element( './/text()' ){}.join(interstitial)
end
--
Phlip
http://www.oreilly.com/catalog/9780596510657/
"Test Driven Ajax (on Rails)"
assert_xpath, assert_javascript, & assert_ajax