require File.expand_path(File.dirname(__FILE__) + "/../spec_helper") describe "choose" do it "should fail if no radio buttons found" do with_html <<-HTML
HTML lambda { choose "first option" }.should raise_error(Webrat::NotFoundError) end it "should fail if input is not a radio button" do with_html <<-HTML HTML lambda { choose "first_option" }.should raise_error(Webrat::NotFoundError) end it "should check rails style radio buttons" do with_html <<-HTML HTML webrat_session.should_receive(:get).with("/login", "user" => {"gender" => "M"}) choose "Male" click_button end it "should only submit last chosen value" do with_html <<-HTML HTML webrat_session.should_receive(:get).with("/login", "user" => {"gender" => "M"}) choose "Female" choose "Male" click_button end it "should fail if the radio button is disabled" do with_html <<-HTML HTML lambda { choose "first_option" }.should raise_error(Webrat::DisabledFieldError) end it "should result in the value on being posted if not specified" do with_html <<-HTML HTML webrat_session.should_receive(:post).with("/login", "first_option" => "on") choose "first_option" click_button end it "should result in the value on being posted if not specified and checked by default" do with_html <<-HTML HTML webrat_session.should_receive(:post).with("/login", "first_option" => "on") click_button end it "should result in the value of the selected radio button being posted when a subsequent one is checked by default" do with_html <<-HTML HTML webrat_session.should_receive(:post).with("/login", "user" => {"gender" => "M"}) choose "Male" click_button end end