From e788e08201c5897c12364260be8067ff4dd3d0b3 Mon Sep 17 00:00:00 2001 From: J.D. Hollis Date: Wed, 24 Jun 2009 14:54:44 -0400 Subject: [PATCH] Fixes issue where a gem is detected as a framework gem and is marked frozen (even though it isn't). --- railties/lib/rails/gem_dependency.rb | 2 +- railties/test/gem_dependency_test.rb | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/railties/lib/rails/gem_dependency.rb b/railties/lib/rails/gem_dependency.rb index 3cc7549..045ecd7 100644 --- a/railties/lib/rails/gem_dependency.rb +++ b/railties/lib/rails/gem_dependency.rb @@ -67,7 +67,7 @@ module Rails self.class.add_frozen_gem_path return if @loaded || @load_paths_added if framework_gem? - @load_paths_added = @loaded = @frozen = true + @load_paths_added = @loaded = true return end gem self diff --git a/railties/test/gem_dependency_test.rb b/railties/test/gem_dependency_test.rb index 70f4496..904e484 100644 --- a/railties/test/gem_dependency_test.rb +++ b/railties/test/gem_dependency_test.rb @@ -207,5 +207,14 @@ class GemDependencyTest < Test::Unit::TestCase dep_gem.expects(:build).with({ :force => true }).once start_gem.build(:force => true) end - + + def test_gem_add_load_paths_does_not_automatically_mark_framework_gems_frozen + framework_gem = Rails::GemDependency.new('dummy-framework-gem') + framework_gem.stubs(:framework_gem?).returns(true) # already loaded + framework_gem.stubs(:vendor_rails?).returns(false) # but not in vendor/rails + framework_gem.stubs(:vendor_gem?).returns(false) # and not in vendor/gems + framework_gem.add_load_paths + assert !framework_gem.frozen? + end + end -- 1.6.3.2