aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@plataformatec.com.br>2012-07-01 02:54:33 -0700
committerJosé Valim <jose.valim@plataformatec.com.br>2012-07-01 02:54:33 -0700
commit2ee3fa1a48513a2c42833e2e1f60fe03769bc295 (patch)
tree3560d14f79c5614138ab5261e49e793bdd65177f
parent98b46bf5e201307cae56ee14bf41363a539779c5 (diff)
parent0f4d005501c4230fcdf8d64d530639f5bcda6086 (diff)
downloadrails-2ee3fa1a48513a2c42833e2e1f60fe03769bc295.tar.gz
rails-2ee3fa1a48513a2c42833e2e1f60fe03769bc295.tar.bz2
rails-2ee3fa1a48513a2c42833e2e1f60fe03769bc295.zip
Merge pull request #6910 from mulder/fix_path_glob
Persist glob when replacing a path
-rw-r--r--railties/lib/rails/paths.rb3
-rw-r--r--railties/test/paths_test.rb7
2 files changed, 9 insertions, 1 deletions
diff --git a/railties/lib/rails/paths.rb b/railties/lib/rails/paths.rb
index 9b4a69f19f..3c2210aaf9 100644
--- a/railties/lib/rails/paths.rb
+++ b/railties/lib/rails/paths.rb
@@ -51,7 +51,8 @@ module Rails
end
def []=(path, value)
- add(path, :with => value)
+ glob = self[path] ? self[path].glob : nil
+ add(path, :with => value, :glob => glob)
end
def add(path, options={})
diff --git a/railties/test/paths_test.rb b/railties/test/paths_test.rb
index d334034e7d..491c45da70 100644
--- a/railties/test/paths_test.rb
+++ b/railties/test/paths_test.rb
@@ -198,6 +198,13 @@ class PathsTest < ActiveSupport::TestCase
assert_equal "*.rb", @root["app"].glob
end
+ test "it should be possible to replace a path and persist the original paths glob" do
+ @root.add "app", :glob => "*.rb"
+ @root["app"] = "app2"
+ assert_equal ["/foo/bar/app2"], @root["app"].paths
+ assert_equal "*.rb", @root["app"].glob
+ end
+
test "a path can be added to the load path" do
@root["app"] = "app"
@root["app"].load_path!