optgroups don't nest
This commit is contained in:
parent
2ed9aad29f
commit
16a23ae000
|
@ -93,7 +93,7 @@ class Capybara::RackTest::Node < Capybara::Driver::Node
|
|||
if %w(option optgroup).include? tag_name
|
||||
string_node.disabled? || (find_xpath("parent::optgroup")[0] || find_xpath("parent::select")[0]).disabled?
|
||||
else
|
||||
!!(string_node.disabled? || ((fieldset = find_xpath("parent::fieldset")[0]) && fieldset.disabled?))
|
||||
!!(string_node.disabled? || find_xpath("ancestor::fieldset[@disabled]")[0])
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -63,6 +63,7 @@ Capybara::SpecHelper.spec '#find_field' do
|
|||
it "should find disabled fields when true" do
|
||||
expect(@session.find_field("Disabled Checkbox", disabled: true)[:name]).to eq("form[disabled_checkbox]")
|
||||
expect(@session.find_field("form_disabled_fieldset_child", disabled: true)[:name]).to eq("form[disabled_fieldset_child]")
|
||||
expect(@session.find_field("form_disabled_fieldset_descendant", disabled: true)[:name]).to eq("form[disabled_fieldset_descendant]")
|
||||
end
|
||||
|
||||
it "should not find disabled fields when false" do
|
||||
|
|
|
@ -181,6 +181,10 @@ Capybara::SpecHelper.spec "node" do
|
|||
expect(@session.find('//input[@id="form_enabled_fieldset_child"]')).not_to be_disabled
|
||||
end
|
||||
|
||||
it "should sees options in a disabled fieldset as disabled" do
|
||||
@session.visit('/form')
|
||||
expect(@session.find('//option', text: 'Disabled Child Option')).to be_disabled
|
||||
end
|
||||
|
||||
it "should be boolean" do
|
||||
@session.visit('/form')
|
||||
|
|
|
@ -344,14 +344,28 @@ New line after and before textarea tag
|
|||
</p>
|
||||
|
||||
<p>
|
||||
<fieldset disabled="disabled">
|
||||
<input name="form[disabled_fieldset_child]" id="form_disabled_fieldset_child"/>
|
||||
<fieldset>
|
||||
<input name="form[enabled_fieldset_child]" id="form_enabled_fieldset_child"/>
|
||||
</fieldset>
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
<fieldset>
|
||||
<input name="form[enabled_fieldset_child]" id="form_enabled_fieldset_child"/>
|
||||
<fieldset disabled="disabled">
|
||||
<legend>Disabled Child</legend>
|
||||
<input name="form[disabled_fieldset_child]" id="form_disabled_fieldset_child"/>
|
||||
<select>
|
||||
<option>Disabled Child Option</option>
|
||||
</select>
|
||||
</fieldset>
|
||||
|
||||
<fieldset disabled="disabled">
|
||||
<legend>Nested Disabled</legend>
|
||||
<p>
|
||||
<fieldset>
|
||||
<input name="form[disabled_fieldset_descendant]" id="form_disabled_fieldset_descendant"/>
|
||||
</fieldset>
|
||||
</p>
|
||||
</fieldset>
|
||||
</p>
|
||||
|
||||
|
@ -359,11 +373,11 @@ New line after and before textarea tag
|
|||
<select>
|
||||
<optgroup label="Level One">
|
||||
<option> A.1 </option>
|
||||
<optgroup label="Level Two" disabled="disabled">
|
||||
<option> A.B.1 </option>
|
||||
</optgroup>
|
||||
<option> A.2 </option>
|
||||
</optgroup>
|
||||
<optgroup label="Level Two" disabled="disabled">
|
||||
<option> A.B.1 </option>
|
||||
</optgroup>
|
||||
<option> A.2 </option>
|
||||
</select>
|
||||
</p>
|
||||
|
||||
|
|
Loading…
Reference in New Issue