diff options
author | John Firebaugh <john_firebaugh@bigfix.com> | 2010-09-24 18:42:01 -0700 |
---|---|---|
committer | John Firebaugh <john_firebaugh@us.ibm.com> | 2010-10-29 15:27:19 -0700 |
commit | 403b06e98ee88b96b6fbd8692f072fdfa7857639 (patch) | |
tree | e3051cd94855c2dd32865ddaaf7b1e0326aca891 /actionpack | |
parent | 7bbad753e2545a530394f2fe73b7edfef1523ab0 (diff) | |
download | rails-403b06e98ee88b96b6fbd8692f072fdfa7857639.tar.gz rails-403b06e98ee88b96b6fbd8692f072fdfa7857639.tar.bz2 rails-403b06e98ee88b96b6fbd8692f072fdfa7857639.zip |
Ensure original exception message is present in both Template::Error#message and Template::Error#inspect.
Previously, #inspect would produce #<ActionView::Template::Error: ActionView::Template::Error>, which is not very useful.
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_view/template/error.rb | 5 | ||||
-rw-r--r-- | actionpack/test/template/template_error_test.rb | 13 |
2 files changed, 14 insertions, 4 deletions
diff --git a/actionpack/lib/action_view/template/error.rb b/actionpack/lib/action_view/template/error.rb index 3c7380ee19..c3d5aca6ac 100644 --- a/actionpack/lib/action_view/template/error.rb +++ b/actionpack/lib/action_view/template/error.rb @@ -52,6 +52,7 @@ module ActionView attr_reader :original_exception, :backtrace def initialize(template, assigns, original_exception) + super(original_exception.message) @template, @assigns, @original_exception = template, assigns.dup, original_exception @sub_templates = nil @backtrace = original_exception.backtrace @@ -61,10 +62,6 @@ module ActionView @template.identifier end - def message - original_exception.message - end - def sub_template_message if @sub_templates "Trace of template inclusion: " + diff --git a/actionpack/test/template/template_error_test.rb b/actionpack/test/template/template_error_test.rb new file mode 100644 index 0000000000..3a874082d9 --- /dev/null +++ b/actionpack/test/template/template_error_test.rb @@ -0,0 +1,13 @@ +require "abstract_unit" + +class TemplateErrorTest < ActiveSupport::TestCase + def test_provides_original_message + error = ActionView::Template::Error.new("test", {}, Exception.new("original")) + assert_equal "original", error.message + end + + def test_provides_useful_inspect + error = ActionView::Template::Error.new("test", {}, Exception.new("original")) + assert_equal "#<ActionView::Template::Error: original>", error.inspect + end +end |