Skip to content

Commit

Permalink
Ensure calling a method in Rails::Application does not instantiate a …
Browse files Browse the repository at this point in the history
…void application.
  • Loading branch information
josevalim committed Jan 26, 2010
1 parent c5b652f commit db99324
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
6 changes: 3 additions & 3 deletions railties/lib/rails/application.rb
Expand Up @@ -16,10 +16,10 @@ class << self
alias :configure :class_eval

def instance
if instance_of?(Rails::Application)
Rails.application.instance
if self == Rails::Application
Rails.application
else
@instance ||= new
@@instance ||= new
end
end

Expand Down
7 changes: 7 additions & 0 deletions railties/test/application/configuration_test.rb
Expand Up @@ -19,6 +19,13 @@ def setup
FileUtils.rm_rf("#{app_path}/config/environments")
end

test "Rails::Application.instance is nil until app is initialized" do
require 'rails'
assert_nil Rails::Application.instance
require "#{app_path}/config/environment"
assert_equal AppTemplate::Application.instance, Rails::Application.instance
end

test "the application root is set correctly" do
require "#{app_path}/config/environment"
assert_equal Pathname.new(app_path), Rails.application.root
Expand Down

0 comments on commit db99324

Please sign in to comment.