aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Peek <josh@joshpeek.com>2008-11-29 15:59:47 -0600
committerJoshua Peek <josh@joshpeek.com>2008-11-29 15:59:47 -0600
commitcec8a92a6d37699a2dbc8fdeb5393113d3621ef9 (patch)
treec712add3aa6d70c9ba75e0963a79984e0aff750f
parent9fccf72725a72baeda508eccd6113b44329e0a7c (diff)
parentfdfcdf467387c4db3d79c1f46eadbb55a88ef814 (diff)
downloadrails-cec8a92a6d37699a2dbc8fdeb5393113d3621ef9.tar.gz
rails-cec8a92a6d37699a2dbc8fdeb5393113d3621ef9.tar.bz2
rails-cec8a92a6d37699a2dbc8fdeb5393113d3621ef9.zip
Merge branch 'master' of git@github.com:rails/rails
-rw-r--r--railties/CHANGELOG2
-rw-r--r--railties/lib/initializer.rb8
-rw-r--r--railties/lib/rails/backtrace_cleaner.rb4
-rw-r--r--railties/test/initializer_test.rb10
4 files changed, 16 insertions, 8 deletions
diff --git a/railties/CHANGELOG b/railties/CHANGELOG
index 250822db7e..ad8ba43c17 100644
--- a/railties/CHANGELOG
+++ b/railties/CHANGELOG
@@ -1,5 +1,7 @@
*2.3.0 [Edge]*
+* Enhanced Rails.root to take parameters that'll be join with the root, like Rails.root('app', 'controllers') => File.join(Rails.root, 'app', 'controllers') #1482 [Damian Janowski]
+
* Added view path support for engines [DHH]
* Added that config/routes.rb files in engine plugins are automatically loaded (and reloaded when they change in dev mode) [DHH]
diff --git a/railties/lib/initializer.rb b/railties/lib/initializer.rb
index a69898e2c5..8e8bcf21fe 100644
--- a/railties/lib/initializer.rb
+++ b/railties/lib/initializer.rb
@@ -48,12 +48,8 @@ module Rails
end
end
- def root
- if defined?(RAILS_ROOT)
- RAILS_ROOT
- else
- nil
- end
+ def root(*args)
+ File.join(RAILS_ROOT, *args.compact) if defined?(RAILS_ROOT)
end
def env
diff --git a/railties/lib/rails/backtrace_cleaner.rb b/railties/lib/rails/backtrace_cleaner.rb
index 82537d962f..d8626aaf14 100644
--- a/railties/lib/rails/backtrace_cleaner.rb
+++ b/railties/lib/rails/backtrace_cleaner.rb
@@ -3,11 +3,11 @@ module Rails
ERB_METHOD_SIG = /:in `_run_erb_.*/
VENDOR_DIRS = %w( vendor/plugins vendor/gems vendor/rails )
- MONGREL_DIRS = %w( lib/mongrel bin/mongrel )
+ SERVER_DIRS = %w( lib/mongrel bin/mongrel lib/rack )
RAILS_NOISE = %w( script/server )
RUBY_NOISE = %w( rubygems/custom_require benchmark.rb )
- ALL_NOISE = VENDOR_DIRS + MONGREL_DIRS + RAILS_NOISE + RUBY_NOISE
+ ALL_NOISE = VENDOR_DIRS + SERVER_DIRS + RAILS_NOISE + RUBY_NOISE
def initialize
super
diff --git a/railties/test/initializer_test.rb b/railties/test/initializer_test.rb
index 2104412c54..33c81bc5ad 100644
--- a/railties/test/initializer_test.rb
+++ b/railties/test/initializer_test.rb
@@ -311,3 +311,13 @@ uses_mocha 'i18n settings' do
end
end
end
+
+class RailsRootTest < Test::Unit::TestCase
+ def test_rails_dot_root_equals_rails_root
+ assert_equal RAILS_ROOT, Rails.root
+ end
+
+ def test_rails_dot_root_accepts_arguments_for_file_dot_join
+ assert_equal File.join(RAILS_ROOT, 'app', 'controllers'), Rails.root('app', 'controllers')
+ end
+end \ No newline at end of file