diff options
Diffstat (limited to 'actionpack/test/controller')
4 files changed, 39 insertions, 27 deletions
diff --git a/actionpack/test/controller/caching_test.rb b/actionpack/test/controller/caching_test.rb index 8a13d1e5f1..de92fc56fd 100644 --- a/actionpack/test/controller/caching_test.rb +++ b/actionpack/test/controller/caching_test.rb @@ -611,7 +611,7 @@ class FragmentCachingTest < ActionController::TestCase @store.write('views/expensive', 'fragment content') fragment_computed = false - buffer = 'generated till now -> ' + buffer = 'generated till now -> '.html_safe @controller.fragment_for(buffer, 'expensive') { fragment_computed = true } assert fragment_computed @@ -622,7 +622,7 @@ class FragmentCachingTest < ActionController::TestCase @store.write('views/expensive', 'fragment content') fragment_computed = false - buffer = 'generated till now -> ' + buffer = 'generated till now -> '.html_safe @controller.fragment_for(buffer, 'expensive') { fragment_computed = true } assert !fragment_computed diff --git a/actionpack/test/controller/new_base/render_template_test.rb b/actionpack/test/controller/new_base/render_template_test.rb index c81b951c0d..70cebbfd89 100644 --- a/actionpack/test/controller/new_base/render_template_test.rb +++ b/actionpack/test/controller/new_base/render_template_test.rb @@ -2,18 +2,19 @@ require 'abstract_unit' module RenderTemplate class WithoutLayoutController < ActionController::Base - + self.view_paths = [ActionView::FixtureResolver.new( "test/basic.html.erb" => "Hello from basic.html.erb", "shared.html.erb" => "Elastica", "locals.html.erb" => "The secret is <%= secret %>", - "xml_template.xml.builder" => "xml.html do\n xml.p 'Hello'\nend" + "xml_template.xml.builder" => "xml.html do\n xml.p 'Hello'\nend", + "with_raw.html.erb" => "Hello <%=raw '<strong>this is raw</strong>' %>" )] - + def index render :template => "test/basic" end - + def index_without_key render "test/basic" end @@ -25,59 +26,70 @@ module RenderTemplate def in_top_directory_with_slash render :template => '/shared' end - + def in_top_directory_with_slash_without_key render '/shared' end - + def with_locals render :template => "locals", :locals => { :secret => 'area51' } end - + def builder_template render :template => "xml_template" end + + def with_raw + render :template => "with_raw" + end end - + class TestWithoutLayout < Rack::TestCase testing RenderTemplate::WithoutLayoutController - + test "rendering a normal template with full path without layout" do get :index assert_response "Hello from basic.html.erb" end - + test "rendering a normal template with full path without layout without key" do get :index_without_key assert_response "Hello from basic.html.erb" end - + test "rendering a template not in a subdirectory" do get :in_top_directory assert_response "Elastica" end - + test "rendering a template not in a subdirectory with a leading slash" do get :in_top_directory_with_slash assert_response "Elastica" end - + test "rendering a template not in a subdirectory with a leading slash without key" do get :in_top_directory_with_slash_without_key assert_response "Elastica" end - + test "rendering a template with local variables" do get :with_locals assert_response "The secret is area51" end - + test "rendering a builder template" do get :builder_template, "format" => "xml" assert_response "<html>\n <p>Hello</p>\n</html>\n" end + + test "rendering a template with <%=raw stuff %>" do + get :with_raw + + assert_body "Hello <strong>this is raw</strong>" + assert_status 200 + end end - + class WithLayoutController < ::ApplicationController self.view_paths = [ActionView::FixtureResolver.new( "test/basic.html.erb" => "Hello from basic.html.erb", @@ -85,28 +97,28 @@ module RenderTemplate "layouts/application.html.erb" => "<%= yield %>, I'm here!", "layouts/greetings.html.erb" => "<%= yield %>, I wish thee well." )] - + def index render :template => "test/basic" end - + def with_layout render :template => "test/basic", :layout => true end - + def with_layout_false render :template => "test/basic", :layout => false end - + def with_layout_nil render :template => "test/basic", :layout => nil end - + def with_custom_layout render :template => "test/basic", :layout => "greetings" end end - + class TestWithLayout < Rack::TestCase describe "Rendering with :template using implicit or explicit layout" diff --git a/actionpack/test/controller/output_escaping_test.rb b/actionpack/test/controller/output_escaping_test.rb index 7332f3f1e3..43a8c05cda 100644 --- a/actionpack/test/controller/output_escaping_test.rb +++ b/actionpack/test/controller/output_escaping_test.rb @@ -13,7 +13,7 @@ class OutputEscapingTest < ActiveSupport::TestCase test "escapeHTML shouldn't touch explicitly safe strings" do # TODO this seems easier to compose and reason about, but # this should be verified - assert_equal "<", ERB::Util.h("<".html_safe!) + assert_equal "<", ERB::Util.h("<".html_safe) end end diff --git a/actionpack/test/controller/view_paths_test.rb b/actionpack/test/controller/view_paths_test.rb index 05d2c8407c..56821332c5 100644 --- a/actionpack/test/controller/view_paths_test.rb +++ b/actionpack/test/controller/view_paths_test.rb @@ -142,9 +142,9 @@ class ViewLoadPathsTest < ActionController::TestCase assert_paths A, "a/path" assert_paths A, *B.view_paths assert_paths C, *original_load_paths - + C.view_paths = [] - assert_nothing_raised { C.view_paths << 'c/path' } + assert_nothing_raised { C.append_view_path 'c/path' } assert_paths C, "c/path" end end |