Add test to check support of fields with complex names such user[pictures][][path].

This test fail when use rack test driver.
See http://github.com/jnicklas/capybara/issues#issue/60
This commit is contained in:
Anatoliy Lysenko 2010-10-10 11:18:21 +03:00
parent 89d00c4f08
commit 5bbcf7d6a0
2 changed files with 37 additions and 0 deletions

View File

@ -68,6 +68,25 @@ shared_examples_for "session" do
it_should_behave_like "unselect"
it_should_behave_like "within"
it_should_behave_like "current_url"
it "should encode complex field names, like array[][value]" do
@session.visit('/form')
@session.fill_in('address1_city', :with =>'Paris')
@session.fill_in('address1_street', :with =>'CDG')
@session.fill_in('address2_city', :with => 'Mikolaiv')
@session.fill_in('address2_street', :with => 'PGS')
@session.click_button "awesome"
addresses=extract_results(@session)["addresses"]
addresses.should have(2).addresses
addresses[0]["street"].should == 'CDG'
addresses[0]["city"].should == 'Paris'
addresses[1]["street"].should == 'PGS'
addresses[1]["city"].should == 'Mikolaiv'
end
end

View File

@ -158,6 +158,24 @@
<option selected="selected" value="thermal">Long Johns</option>
</select>
</p>
<p>
<span>First address<span>
<label for='address1_street'>Street</label>
<input type="text" name="form[addresses][][street]" value="" id="address1_street">
<label for='address1_city'>City</label>
<input type="text" name="form[addresses][][city]" value="" id="address1_city">
</p>
<p>
<span>Second address<span>
<label for='address2_street'>Street</label>
<input type="text" name="form[addresses][][street]" value="" id="address2_street">
<label for='address2_city'>City</label>
<input type="text" name="form[addresses][][city]" value="" id="address2_city">
</p>
<div style="display:none;">
<label for="form_first_name_hidden">