Sha256: 6ab6553036414a3dfc082857511cfbeb66fe80760e7c59d301f0ac7600c897fb

Contents?: true

Size: 1.66 KB

Versions: 3

Compression:

Stored size: 1.66 KB

Contents

# frozen_string_literal: true

require 'watirspec_helper'

module Watir
  describe TableRowCollection do
    before do
      browser.goto(WatirSpec.url_for('tables.html'))
    end

    describe 'with selectors' do
      it 'returns the matching elements' do
        expect(browser.trs(id: 'outer_second').to_a).to eq [browser.tr(id: 'outer_second')]
      end
    end

    describe '#length' do
      it 'returns the correct number of cells (table context)' do
        expect(browser.table(id: 'inner').trs.length).to eq 1
        expect(browser.table(id: 'outer').trs.length).to eq 4
      end

      it 'returns the correct number of cells (page context)' do
        expect(browser.trs.length).to eq 14
      end
    end

    describe '#[]' do
      it 'returns the row at the given index (table context)' do
        expect(browser.table(id: 'outer').trs[0].id).to eq 'outer_first'
      end

      it 'returns the row at the given index (page context)' do
        expect(browser.trs[0].id).to eq 'thead_row_1'
      end
    end

    describe '#each' do
      it 'iterates through rows correctly' do
        inner_table = browser.table(id: 'inner')
        count = 0

        inner_table.trs.each_with_index do |r, index|
          expect(r.id).to eq inner_table.tr(index: index).id
          count += 1
        end
        expect(count).to be > 0
      end

      it 'iterates through the outer table correctly' do
        outer_table = browser.table(id: 'outer')
        count = 0

        outer_table.trs.each_with_index do |r, index|
          expect(r.id).to eq outer_table.tr(index: index).id
          count += 1
        end

        expect(count).to be > 0
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
watir-7.3.0 spec/watirspec/elements/trs_spec.rb
watir-7.2.2 spec/watirspec/elements/trs_spec.rb
watir-7.2.1 spec/watirspec/elements/trs_spec.rb