Sha256: 7ff6ef2d7b9f4c3221e4e9b386b0d00c1a5cb51b6808ae0e3afcfb98e0bd4bf7
Contents?: true
Size: 1.35 KB
Versions: 1
Compression:
Stored size: 1.35 KB
Contents
module Watir module Generator module HTML class SpecExtractor < Base::SpecExtractor private def extract_interface_map # http://www.whatwg.org/specs/web-apps/current-work/#elements-1 table = @doc.search("//h3[@id='index-elements']/following-sibling::table[1]").first table || raise('could not find index-elements table') @interface_map = {} parse_table(table).each do |row| row['Element'].split(', ').each { |tag| @interface_map[tag] = row['Interface'] } end end def build_result {}.tap do |result| @interface_map.each do |tag, interface| result[tag] = fetch_interface(interface) end # missing from the elements-1 table result['frameset'] = fetch_interface('HTMLFrameSetElement') end end def parse_table(table) headers = table.css('thead th').map { |e| e.inner_text.strip } table.css('tbody tr').map do |row| result = {} row.css('th, td').each_with_index do |node, idx| result[headers[idx]] = node.inner_text.strip end result end end def issued_interfaces [] end end # SpecExtractor end # HTML end # Generator end # Watir
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
watir-6.14.0 | lib/watir/generator/html/spec_extractor.rb |