Sha256: 87d42b08648520b5f765c9868e17d5da1c4a38d38ef2fce661446f161e186451

Contents?: true

Size: 918 Bytes

Versions: 5

Compression:

Stored size: 918 Bytes

Contents

module PageObject
  module Platforms
    module Selenium
      module Table

        #
        # Return the PageObject::Elements::TableRow for the index provided.  Index
        # is zero based.
        #
        # @return [PageObject::Elements::TableRow]
        #
        def [](idx)
          eles = table_rows
          Object::PageObject::Elements::TableRow.new(eles[idx], :platform => :selenium)
        end

        #
        # Returns the number of rows in the table.
        #
        def rows
          table_rows.size
        end

        #
        # override PageObject::Platforms::SeleniumElement because exists? is not
        # available on a table element in Selenium.
        #
        def exists?
          raise "exists? not available on table element"
        end

        private

        def table_rows
          @element.find_elements(:xpath, child_xpath)
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
page-object-0.2.5 lib/page-object/platforms/selenium/table.rb
page-object-0.2.4 lib/page-object/platforms/selenium/table.rb
page-object-0.2.3 lib/page-object/platforms/selenium/table.rb
page-object-0.2.2 lib/page-object/platforms/selenium/table.rb
page-object-0.2.1 lib/page-object/platforms/selenium/table.rb