2012-07-21 20:44:10 +00:00
|
|
|
Capybara::SpecHelper.spec '#find_by_id' do
|
|
|
|
before do
|
|
|
|
@session.visit('/with_html')
|
|
|
|
end
|
2009-12-30 03:05:38 +00:00
|
|
|
|
2012-07-21 20:44:10 +00:00
|
|
|
it "should find any element by id" do
|
2013-11-14 17:43:36 +00:00
|
|
|
expect(@session.find_by_id('red').tag_name).to eq('a')
|
2012-07-21 20:44:10 +00:00
|
|
|
end
|
2009-12-30 03:05:38 +00:00
|
|
|
|
2012-09-06 07:33:43 +00:00
|
|
|
it "casts to string" do
|
2013-11-14 17:43:36 +00:00
|
|
|
expect(@session.find_by_id(:'red').tag_name).to eq('a')
|
2012-09-06 07:33:43 +00:00
|
|
|
end
|
|
|
|
|
2012-07-21 20:44:10 +00:00
|
|
|
it "should raise error if no element with id is found" do
|
2012-10-30 13:26:19 +00:00
|
|
|
expect do
|
2012-07-21 20:44:10 +00:00
|
|
|
@session.find_by_id('nothing_with_this_id')
|
2012-10-30 13:26:19 +00:00
|
|
|
end.to raise_error(Capybara::ElementNotFound)
|
2009-12-30 03:05:38 +00:00
|
|
|
end
|
2013-02-24 16:47:53 +00:00
|
|
|
|
|
|
|
context "with :visible option" do
|
|
|
|
it "finds invisible elements when `false`" do
|
2013-11-14 17:43:36 +00:00
|
|
|
expect(@session.find_by_id("hidden_via_ancestor", :visible => false).text(:all)).to match(/with hidden ancestor/)
|
2013-02-24 16:47:53 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
it "finds invisible elements when `false`" do
|
|
|
|
expect do
|
|
|
|
@session.find_by_id("hidden_via_ancestor", :visible => true)
|
|
|
|
end.to raise_error(Capybara::ElementNotFound)
|
|
|
|
end
|
|
|
|
end
|
2010-01-18 19:33:22 +00:00
|
|
|
end
|