require File.expand_path(File.dirname(__FILE__) + "/../spec_helper") describe "select_time" do before do @session = Webrat::TestSession.new end it "should send the values for each individual time component" do @session.response_body = <<-EOS

:
EOS @session.should_receive(:post).with("/appointments", "appointment" => {"time(4i)" => "09", "time(5i)" => "30"}) @session.selects_time "9:30AM", :from => "Time" @session.click_button end it "should select time components with the suffix convention provided" do @session.response_body = <<-EOS

:
EOS @session.should_receive(:post).with("/appointments", "appointment" => {"hour" => "09", "minute" => "30"}) @session.selects_time "9:30", :from => "Time", :suffix_convention => :full_words @session.click_button end it "should select the time components with the suffixes provided" do @session.response_body = <<-EOS

:
EOS @session.should_receive(:post).with("/appointments", "appointment" => {"h" => "09", "mi" => "30"}) @session.selects_time "9:30", :from => "Time", :suffixes => {:hour => 'h', :minute => 'mi'} @session.click_button end it "should accept a time object" do @session.response_body = <<-EOS

:
EOS @session.should_receive(:post).with("/appointments", "appointment" => {"time(4i)" => "09", "time(5i)" => "30"}) @session.select_time Time.parse("9:30AM"), :from => "Time" @session.click_button end it "should work when no label is specified" do @session.response_body = <<-EOS
:
EOS @session.should_receive(:post).with("/appointments", "appointment" => {"time(4i)" => "09", "time(5i)" => "30"}) @session.select_time "9:30" @session.click_button end it "should fail if the specified label is not found" do @session.response_body = <<-EOS
EOS lambda { @session.select_time "9:30", :from => "Time" }.should raise_error end end