diff options
author | John Hawthorn <john@hawthorn.email> | 2019-04-04 12:48:52 -0700 |
---|---|---|
committer | John Hawthorn <john@hawthorn.email> | 2019-04-04 15:07:14 -0700 |
commit | 151cac65f12e4718317f39254f6a7ccea4ade25b (patch) | |
tree | e88b7b6a27fada104968f72d9de66fee72d6a28e | |
parent | db1830a7ec5765909fadb80a8725e52cc37ade07 (diff) | |
download | rails-151cac65f12e4718317f39254f6a7ccea4ade25b.tar.gz rails-151cac65f12e4718317f39254f6a7ccea4ade25b.tar.bz2 rails-151cac65f12e4718317f39254f6a7ccea4ade25b.zip |
Deprecate Template#refresh
-rw-r--r-- | actionview/lib/action_view/template.rb | 20 | ||||
-rw-r--r-- | actionview/test/template/template_test.rb | 20 |
2 files changed, 4 insertions, 36 deletions
diff --git a/actionview/lib/action_view/template.rb b/actionview/lib/action_view/template.rb index 291cb8dd9f..b80bf56c1b 100644 --- a/actionview/lib/action_view/template.rb +++ b/actionview/lib/action_view/template.rb @@ -165,6 +165,7 @@ module ActionView deprecate def formats; Array(format); end deprecate def variants=(_); end deprecate def variants; [variant]; end + deprecate def refresh(_); self; end # Returns whether the underlying handler supports streaming. If so, # a streaming buffer *may* be passed when it starts rendering. @@ -191,25 +192,6 @@ module ActionView @type ||= Types[format] end - # Receives a view object and return a template similar to self by using @virtual_path. - # - # This method is useful if you have a template object but it does not contain its source - # anymore since it was already compiled. In such cases, all you need to do is to call - # refresh passing in the view object. - # - # Notice this method raises an error if the template to be refreshed does not have a - # virtual path set (true just for inline templates). - def refresh(view) - raise "A template needs to have a virtual path in order to be refreshed" unless @virtual_path - lookup = view.lookup_context - pieces = @virtual_path.split("/") - name = pieces.pop - partial = !!name.sub!(/^_/, "") - lookup.disable_cache do - lookup.find_template(name, [ pieces.join("/") ], partial, @locals) - end - end - def short_identifier @short_identifier ||= defined?(Rails.root) ? identifier.sub("#{Rails.root}/", "") : identifier end diff --git a/actionview/test/template/template_test.rb b/actionview/test/template/template_test.rb index 5ccddb3e9e..049e0bc129 100644 --- a/actionview/test/template/template_test.rb +++ b/actionview/test/template/template_test.rb @@ -121,24 +121,10 @@ class TestERBTemplate < ActiveSupport::TestCase assert_equal "hellopartialhello", render end - def test_refresh_with_templates + def test_refresh_is_deprecated @template = new_template("Hello", virtual_path: "test/foo/bar", locals: [:key]) - assert_called_with(@context.lookup_context, :find_template, ["bar", %w(test/foo), false, [:key]], returns: "template") do - assert_equal "template", @template.refresh(@context) - end - end - - def test_refresh_with_partials - @template = new_template("Hello", virtual_path: "test/_foo", locals: [:key]) - assert_called_with(@context.lookup_context, :find_template, ["foo", %w(test), true, [:key]], returns: "partial") do - assert_equal "partial", @template.refresh(@context) - end - end - - def test_refresh_raises_an_error_without_virtual_path - @template = new_template("Hello", virtual_path: nil) - assert_raise RuntimeError do - @template.refresh(@context) + assert_deprecated do + assert_same @template, @template.refresh(@context) end end |