From d1725929852ab9da48f7ff7c4fa7f401ac55c331 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sat, 23 Jul 2005 08:43:01 +0000 Subject: Added test for template to layout variable transfer git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1904 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_controller/base.rb | 4 ++-- actionpack/test/controller/new_render_test.rb | 11 +++++++++++ actionpack/test/fixtures/layouts/talk_from_action.rhtml | 2 ++ actionpack/test/fixtures/test/action_talk_to_layout.rhtml | 2 ++ 4 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 actionpack/test/fixtures/layouts/talk_from_action.rhtml create mode 100644 actionpack/test/fixtures/test/action_talk_to_layout.rhtml (limited to 'actionpack') diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index 849b834cd1..bee72d90f2 100755 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -724,7 +724,7 @@ module ActionController #:nodoc: # # This method will overwrite an existing Cache-Control header. # See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html for more possibilities. - def expires_in(seconds, options = {}) + def expires_in(seconds, options = {}) #:doc: cache_options = { 'max-age' => seconds, 'private' => true }.symbolize_keys.merge!(options.symbolize_keys) cache_options.delete_if { |k,v| v.nil? or v == false } cache_control = cache_options.map{ |k,v| v == true ? k.to_s : "#{k.to_s}=#{v.to_s}"} @@ -733,7 +733,7 @@ module ActionController #:nodoc: # Sets a HTTP 1.1 Cache-Control header of "no-cache" so no caching should occur by the browser or # intermediate caches (like caching proxy servers). - def expires_now + def expires_now #:doc: @response.headers["Cache-Control"] = "no-cache" end diff --git a/actionpack/test/controller/new_render_test.rb b/actionpack/test/controller/new_render_test.rb index 105e5ec06d..8af594e94a 100644 --- a/actionpack/test/controller/new_render_test.rb +++ b/actionpack/test/controller/new_render_test.rb @@ -119,6 +119,10 @@ class NewRenderTestController < ActionController::Base render :action => "potential_conflicts" end + def action_talk_to_layout + # Action template sets variable that's picked up by layout + end + def rescue_action(e) raise end private @@ -133,6 +137,8 @@ class NewRenderTestController < ActionController::Base "layouts/standard" when "builder_layout_test" "layouts/builder" + when "action_talk_to_layout" + "layouts/talk_from_action" end end end @@ -293,6 +299,11 @@ class NewRenderTest < Test::Unit::TestCase assert_equal("First: David\nSecond: Stephan\nThird: David\nFourth: David\nFifth: ", @response.body) end + def test_action_talk_to_layout + get :action_talk_to_layout + assert_equal "Talking to the layout\nAction was here!", @response.body + end + # def test_partials_list # get :partials_list # assert_equal "goodbyeHello: davidHello: marygoodbye\n", @response.body diff --git a/actionpack/test/fixtures/layouts/talk_from_action.rhtml b/actionpack/test/fixtures/layouts/talk_from_action.rhtml new file mode 100644 index 0000000000..215dfd27ac --- /dev/null +++ b/actionpack/test/fixtures/layouts/talk_from_action.rhtml @@ -0,0 +1,2 @@ +<%= @title %> +<%= @content_for_layout -%> \ No newline at end of file diff --git a/actionpack/test/fixtures/test/action_talk_to_layout.rhtml b/actionpack/test/fixtures/test/action_talk_to_layout.rhtml new file mode 100644 index 0000000000..36e896daa8 --- /dev/null +++ b/actionpack/test/fixtures/test/action_talk_to_layout.rhtml @@ -0,0 +1,2 @@ +<% @title = "Talking to the layout" -%> +Action was here! \ No newline at end of file -- cgit v1.2.3