Forum: Ruby on Rails Can't seem to test http error codes

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
F74253f4a099258870157426b4cdb2dc?d=identicon&s=25 davetron5000 (Guest)
on 2008-11-17 17:39
(Received via mailing list)
in application.rb

  rescue_from ActiveRecord::RecordNotFound   { |e| http_status_code
(:missing, e) }

  def http_status_code(status, exception)
    @exception = exception
    respond_to do |format|
      format.html { render :template => "shared/status_#
{status.to_s}", :status => status }
      format.any  { head status }
    end
  end

in a controller

    project = Project.find(params[:id])

in my test

  def test_bad_project
    put :update, :id => KNOWN_BAD_ID
    assert_response(:missing)
  end

The result is that I get a 500 every time.

Any clues as to whats' going on?  There's nothing in the log to
explain the 500 I get during tests; the application controller seems
to be detecting the exception and setting the status to 404, but my
tests get 500.

Dave
81b61875e41eaa58887543635d556fca?d=identicon&s=25 Frederick Cheung (Guest)
on 2008-11-17 17:54
(Received via mailing list)
On 17 Nov 2008, at 16:39, davetron5000 wrote:

> {status.to_s}", :status => status }
>      format.any  { head status }
>    end
>  end
>
IIRC the test harness snarfs the exception before it gets to your
exception handler.

Fred
F74253f4a099258870157426b4cdb2dc?d=identicon&s=25 davetron5000 (Guest)
on 2008-11-17 19:27
(Received via mailing list)
The exception handler IS getting called (I put log statements in and
they appear in test.log).

In previous versions of rails, there seemed to be some sort of magic
where a non-200 http response gets turned into a 500 for development,
but not production.  Is that the case, and if so, how do I deal with
this?  I need to test that the correct http responses are being
sent...

Dave

On Nov 17, 11:54 am, Frederick Cheung <frederick.che...@gmail.com>
This topic is locked and can not be replied to.