From 32cea98c3b5bd077692f5b20756e0e3c75e0c524 Mon Sep 17 00:00:00 2001 From: Chad Woolley Date: Sun, 4 Oct 2009 01:50:47 -0700 Subject: [PATCH] Ruby 1.9: Fix ActiveResource::ConnectionError#to_s when @response does not respond to #code or #message Signed-off-by: Carl Lerche --- activeresource/lib/active_resource/exceptions.rb | 5 ++++- activeresource/test/connection_test.rb | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/activeresource/lib/active_resource/exceptions.rb b/activeresource/lib/active_resource/exceptions.rb index 0631cdcf9f..0f4549fd73 100644 --- a/activeresource/lib/active_resource/exceptions.rb +++ b/activeresource/lib/active_resource/exceptions.rb @@ -8,7 +8,10 @@ module ActiveResource end def to_s - "Failed with #{response.code} #{response.message if response.respond_to?(:message)}" + message = "Failed." + message << " Response code = #{response.code}." if response.respond_to?(:code) + message << " Response message = #{response.message}." if response.respond_to?(:message) + message end end diff --git a/activeresource/test/connection_test.rb b/activeresource/test/connection_test.rb index d7466c65b4..2a3e04272a 100644 --- a/activeresource/test/connection_test.rb +++ b/activeresource/test/connection_test.rb @@ -83,7 +83,7 @@ class ConnectionTest < Test::Unit::TestCase begin handle_response ResponseHeaderStub.new(405, "HTTP Failed...", "GET, POST") rescue ActiveResource::MethodNotAllowed => e - assert_equal "Failed with 405 HTTP Failed...", e.message + assert_equal "Failed. Response code = 405. Response message = HTTP Failed....", e.message assert_equal [:get, :post], e.allowed_methods end end