Sha256: ade7713320e87f985aa8666365b6ee7c41fbc1459e836e96c77644fa34f1c43b
Contents?: true
Size: 882 Bytes
Versions: 3
Compression:
Stored size: 882 Bytes
Contents
module TestXml module NokogiriExt module Node def match?(element, compare_value = false) if compare_value && element.text_element? equal_text?(element) else contains_elements_of?(element) && !element.elements.find {|el| not at(el.name).match?(el, compare_value) } end end def elements children.collect {|node| node if node.element? }.delete_if {|node| node.nil?} end def text_element? children.size == 1 && children.first.text? end private def equal_text?(element) content == element.content end def contains_elements_of?(element) element.elements.find {|el| not contains?(el)}.nil? end def contains?(element) children.find {|node| node.element? && node.name == element.name } end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
test_xml-0.0.3 | lib/test_xml/nokogiri/node.rb |
test_xml-0.0.2 | lib/test_xml/nokogiri/node.rb |
test_xml-0.0.1 | lib/test_xml/nokogiri/node.rb |