mirror of
https://github.com/teamcapybara/capybara.git
synced 2022-11-09 12:08:07 -05:00
Check elements are visible when details is opened
This commit is contained in:
parent
2e6871dcbf
commit
52331c8721
2 changed files with 8 additions and 4 deletions
|
@ -103,6 +103,7 @@ module Capybara
|
|||
def visible?(check_ancestors = true)
|
||||
return false if (tag_name == 'input') && (native[:type] == 'hidden')
|
||||
return false if tag_name == 'template'
|
||||
|
||||
if check_ancestors
|
||||
!find_xpath(VISIBILITY_XPATH)
|
||||
else
|
||||
|
|
|
@ -260,11 +260,14 @@ Capybara::SpecHelper.spec 'node' do
|
|||
end
|
||||
|
||||
it 'details non-summary descendants should be non-visible' do
|
||||
# expect(@session.find(:css, 'details ul')).not_to be_visible
|
||||
@session.first(:css, 'details li').visible?
|
||||
@session.all(:css, 'details > *:not(summary), details > *:not(summary) *', minimum: 2).each do |el|
|
||||
expect(el).not_to be_visible
|
||||
end
|
||||
descendants = @session.all(:css, 'details > *:not(summary), details > *:not(summary) *', minimum: 2)
|
||||
expect(descendants).not_to include(be_visible)
|
||||
end
|
||||
|
||||
it 'sees open details as visible', requires: [:js] do
|
||||
@session.find(:css, 'details').click
|
||||
expect(@session.all(:css, 'details *')).to all(be_visible)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue