require "watirspec_helper" describe "TableHeaders" do before :each do browser.goto(WatirSpec.url_for("tables.html")) end describe "with selectors" do it "returns the matching elements" do expect(browser.theads(id: "tax_headers").to_a).to eq [browser.thead(id: "tax_headers")] end end describe "#length" do it "returns the correct number of table theads (page context)" do expect(browser.theads.length).to eq 1 end it "returns the correct number of table theads (table context)" do expect(browser.table(index: 0).theads.length).to eq 1 end end describe "#[]" do it "returns the row at the given index (page context)" do expect(browser.theads[0].id).to eq "tax_headers" end it "returns the row at the given index (table context)" do expect(browser.table(index: 0).theads[0].id).to eq "tax_headers" end end describe "#each" do it "iterates through table theads correctly (page context)" do browser.theads.each_with_index do |thead, index| expect(thead.id).to eq browser.thead(index: index).id end end describe "#each" do it "iterates through table theads correctly (page context)" do count = 0 browser.theads.each_with_index do |thead, index| expect(thead.id).to eq browser.thead(index: index).id count += 1 end expect(count).to be > 0 end it "iterates through table theads correctly (table context)" do table = browser.table(index: 0) count = 0 table.theads.each_with_index do |thead, index| expect(thead.id).to eq table.thead(index: index).id count += 1 end expect(count).to be > 0 end end end end