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