Sha256: 5ac3592fa84b6d9d9e94bb43f82a9bc79e7c388915721a6a0e824cc6565fe64c

Contents?: true

Size: 1.54 KB

Versions: 1

Compression:

Stored size: 1.54 KB

Contents

# encoding: utf-8
require File.expand_path('spec_helper', File.dirname(__FILE__))

describe "TableRows" do

  before :each do
    browser.goto(WatirSpec.files + "/tables.html")
  end

  describe "#length" do
    it "returns the correct number of cells (table context)" do
      browser.table(:id, 'inner').rows.length.should == 1
      browser.table(:id, 'outer').rows.length.should == 3
    end

    it "returns the correct number of cells (page context)" do
      browser.rows.length.should == 14
    end
  end

  describe "#[]" do
    it "returns the row at the given index (table context)" do
      browser.table(:id, 'outer').rows[0].id.should == "outer_first"
    end

    it "returns the row at the given index (page context)" do
      browser.rows[0].id.should == "thead_row_1"
    end
  end

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

      inner_table.rows.each_with_index do |r, index|
        r.id.should == inner_table.row(:index, index).id
        r.value.should == inner_table.row(:index, index).value

		count += 1
      end

      count.should > 0
      # rows inside a table (should not include rows inside a table inside a table)
      outer_table = browser.table(:id, 'outer')
      count = 0

      outer_table.rows.each_with_index do |r, index|
        r.id.should == outer_table.row(:index, index).id
        r.value.should == outer_table.row(:index, index).value

		count += 1
      end

      count.should > 0
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
watir-webdriver-0.0.7 spec/watirspec/table_rows_spec.rb