diff options
author | Louise Crow <louise.crow@gmail.com> | 2012-08-28 10:45:20 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2012-08-28 10:45:20 +0100 |
commit | ee723d9e6645bc7987cb2b7cc9cd320950536201 (patch) | |
tree | f5beec1ffc37c9530485c0cd5be15c56210ae2da /spec/controllers/track_controller_spec.rb | |
parent | e98bfd6e9ed7e6bb151d0eb5c216cad0fed6a40c (diff) | |
parent | 5c1a88c88ba69cec3924ec8a1d69d8784acaef3c (diff) |
Merge branch 'release/0.6.4'0.6.4
Diffstat (limited to 'spec/controllers/track_controller_spec.rb')
-rw-r--r-- | spec/controllers/track_controller_spec.rb | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/spec/controllers/track_controller_spec.rb b/spec/controllers/track_controller_spec.rb index 1d38b3055..7daa23769 100644 --- a/spec/controllers/track_controller_spec.rb +++ b/spec/controllers/track_controller_spec.rb @@ -11,7 +11,13 @@ describe TrackController, "when making a new track on a request" do TrackThing.stub!(:create_track_for_request).and_return(@track_thing) TrackThing.stub!(:create_track_for_search_query).and_return(@track_thing) TrackThing.stub!(:find_by_existing_track).and_return(nil) - InfoRequest.stub!(:find_by_url_title).and_return(@ir) + InfoRequest.stub!(:find_by_url_title!) do |url_title| + if url_title == "myrequest" + @ir + else + raise ActiveRecord::RecordNotFound.new("Not found") + end + end @user = mock_model(User) User.stub!(:find).and_return(@user) @@ -32,6 +38,13 @@ describe TrackController, "when making a new track on a request" do get :track_request, :url_title => @ir.url_title, :feed => 'track' response.should redirect_to(:controller => 'request', :action => 'show', :url_title => @ir.url_title) end + + it "should 404 for non-existent requests" do + session[:user_id] = @user.id + lambda { + get :track_request, :url_title => "hjksfdhjk_louytu_qqxxx", :feed => 'track' + }.should raise_error(ActiveRecord::RecordNotFound) + end it "should save a search track and redirect to the right place" do session[:user_id] = @user.id |