From 5ea9f2cac6e136e27d7fef2662412dda25391860 Mon Sep 17 00:00:00 2001 From: Sam Pohlenz Date: Thu, 20 Nov 2008 14:05:20 -0800 Subject: Allow helpers directory to be overridden via ActionController::Base.helpers_dir (Sam Pohlenz) [#1424 state:committed] Signed-off-by: David Heinemeier Hansson --- actionpack/test/controller/helper_test.rb | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'actionpack/test/controller') diff --git a/actionpack/test/controller/helper_test.rb b/actionpack/test/controller/helper_test.rb index 83e3b085e7..5f36461b89 100644 --- a/actionpack/test/controller/helper_test.rb +++ b/actionpack/test/controller/helper_test.rb @@ -1,6 +1,6 @@ require 'abstract_unit' -ActionController::Helpers::HELPERS_DIR.replace File.dirname(__FILE__) + '/../fixtures/helpers' +ActionController::Base.helpers_dir = File.dirname(__FILE__) + '/../fixtures/helpers' class TestController < ActionController::Base attr_accessor :delegate_attr @@ -130,6 +130,20 @@ class HelperTest < Test::Unit::TestCase assert methods.include?('foobar') end + def test_all_helpers_with_alternate_helper_dir + @controller_class.helpers_dir = File.dirname(__FILE__) + '/../fixtures/alternate_helpers' + + # Reload helpers + @controller_class.master_helper_module = Module.new + @controller_class.helper :all + + # helpers/abc_helper.rb should not be included + assert !master_helper_methods.include?('bare_a') + + # alternate_helpers/foo_helper.rb + assert master_helper_methods.include?('baz') + end + def test_helper_proxy methods = ApplicationController.helpers.methods.map(&:to_s) -- cgit v1.2.3