lib/watir/elements/table_cell.rb in watir-6.6.3 vs lib/watir/elements/table_cell.rb in watir-6.7.0
- old
+ new
@@ -1,6 +1,31 @@
module Watir
class TableCell < HTMLElement
- alias_method :colspan, :col_span
- alias_method :rowspan, :row_span
+
+ def column_header
+ current_row = parent(tag_name: 'tr')
+ header_row(current_row, index: previous_siblings.size)
+ end
+
+ def sibling_from_header(opt)
+ current_row = parent(tag_name: 'tr')
+ header = header_row(current_row, opt)
+ index = header.previous_siblings.size
+
+ self.class.new(current_row, tag_name: 'td', index: index)
+ end
+
+ private
+
+ def header_row(current_row, opt)
+ table = self.parent(tag_name: 'table')
+ header_row = table.tr
+
+ table.cell_size_check(header_row, current_row)
+
+ header_type = table.th.exist? ? 'th' : 'tr'
+ opt.merge!(tag_name: header_type)
+
+ Watir.tag_to_class[header_type.to_sym].new(header_row, opt)
+ end
end # TableCell
end # Watir