:visible => false now works as expected
This commit is contained in:
parent
380f3d7a08
commit
2b78681d07
|
@ -5,6 +5,7 @@ Release date:
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
* New click_on alias for click_link_or_button, shorter yet unambiguous.
|
* New click_on alias for click_link_or_button, shorter yet unambiguous.
|
||||||
|
* Finders now accept :visible => false which will find all elements regardless of Capybara.ignore_hidden_elements
|
||||||
|
|
||||||
# Version 0.4.0
|
# Version 0.4.0
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,13 @@ module Capybara
|
||||||
results = results.select { |node| node.text.match(text) }
|
results = results.select { |node| node.text.match(text) }
|
||||||
end
|
end
|
||||||
|
|
||||||
if options[:visible] or Capybara.ignore_hidden_elements
|
ignore_hidden = if options.has_key?(:visible)
|
||||||
|
options[:visible]
|
||||||
|
else
|
||||||
|
Capybara.ignore_hidden_elements
|
||||||
|
end
|
||||||
|
|
||||||
|
if ignore_hidden
|
||||||
results = results.select { |node| node.visible? }
|
results = results.select { |node| node.visible? }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -56,6 +56,11 @@ shared_examples_for "all" do
|
||||||
Capybara.ignore_hidden_elements = true
|
Capybara.ignore_hidden_elements = true
|
||||||
@session.all("//a[@title='awesome title']").should have(1).elements
|
@session.all("//a[@title='awesome title']").should have(1).elements
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "should only find invisible nodes" do
|
||||||
|
Capybara.ignore_hidden_elements = true
|
||||||
|
@session.all("//a[@title='awesome title']", :visible => false).should have(2).elements
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context "within a scope" do
|
context "within a scope" do
|
||||||
|
|
Loading…
Reference in New Issue