2007-03-29 05:44:44 +00:00
|
|
|
require "#{File.dirname(__FILE__)}/abstract_unit"
|
2005-10-23 13:39:24 +00:00
|
|
|
require 'initializer'
|
|
|
|
|
2007-09-18 01:45:37 +00:00
|
|
|
class ConfigurationMock < Rails::Configuration
|
|
|
|
attr_reader :environment_path
|
2007-03-29 05:44:44 +00:00
|
|
|
|
2007-09-18 01:45:37 +00:00
|
|
|
def initialize(envpath)
|
|
|
|
super()
|
|
|
|
@environment_path = envpath
|
2005-10-23 13:39:24 +00:00
|
|
|
end
|
2007-09-18 01:45:37 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
class Initializer_load_environment_Test < Test::Unit::TestCase
|
2005-11-07 08:09:38 +00:00
|
|
|
|
2005-10-23 13:39:24 +00:00
|
|
|
def test_load_environment_with_constant
|
|
|
|
config = ConfigurationMock.new("#{File.dirname(__FILE__)}/fixtures/environment_with_constant.rb")
|
2005-11-07 08:09:38 +00:00
|
|
|
assert_nil $initialize_test_set_from_env
|
2005-10-23 13:39:24 +00:00
|
|
|
Rails::Initializer.run(:load_environment, config)
|
2005-11-07 08:09:38 +00:00
|
|
|
assert_equal "success", $initialize_test_set_from_env
|
2005-10-23 13:39:24 +00:00
|
|
|
ensure
|
2005-11-07 08:09:38 +00:00
|
|
|
$initialize_test_set_from_env = nil
|
2005-10-23 13:39:24 +00:00
|
|
|
end
|
2007-09-18 01:45:37 +00:00
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
class Initializer_after_initialize_with_blocks_environment_Test < Test::Unit::TestCase
|
|
|
|
def setup
|
|
|
|
config = ConfigurationMock.new("")
|
|
|
|
config.after_initialize do
|
|
|
|
$test_after_initialize_block1 = "success"
|
|
|
|
end
|
|
|
|
config.after_initialize do
|
|
|
|
$test_after_initialize_block2 = "congratulations"
|
|
|
|
end
|
|
|
|
assert_nil $test_after_initialize_block1
|
|
|
|
assert_nil $test_after_initialize_block2
|
|
|
|
|
|
|
|
Rails::Initializer.run(:after_initialize, config)
|
|
|
|
end
|
|
|
|
|
|
|
|
def teardown
|
|
|
|
$test_after_initialize_block1 = nil
|
|
|
|
$test_after_initialize_block2 = nil
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_should_have_called_the_first_after_initialize_block
|
|
|
|
assert_equal "success", $test_after_initialize_block1
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_should_have_called_the_second_after_initialize_block
|
|
|
|
assert_equal "congratulations", $test_after_initialize_block2
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
class Initializer_after_initialize_with_no_block_environment_Test < Test::Unit::TestCase
|
|
|
|
|
|
|
|
def setup
|
|
|
|
config = ConfigurationMock.new("")
|
|
|
|
config.after_initialize do
|
|
|
|
$test_after_initialize_block1 = "success"
|
|
|
|
end
|
|
|
|
config.after_initialize # don't pass a block, this is what we're testing!
|
|
|
|
config.after_initialize do
|
|
|
|
$test_after_initialize_block2 = "congratulations"
|
|
|
|
end
|
|
|
|
assert_nil $test_after_initialize_block1
|
|
|
|
|
|
|
|
Rails::Initializer.run(:after_initialize, config)
|
|
|
|
end
|
|
|
|
|
|
|
|
def teardown
|
|
|
|
$test_after_initialize_block1 = nil
|
|
|
|
$test_after_initialize_block2 = nil
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_should_have_called_the_first_after_initialize_block
|
|
|
|
assert_equal "success", $test_after_initialize_block1, "should still get set"
|
|
|
|
end
|
|
|
|
|
2007-09-22 14:27:24 +00:00
|
|
|
def test_should_have_called_the_second_after_initialize_block
|
2007-09-18 01:45:37 +00:00
|
|
|
assert_equal "congratulations", $test_after_initialize_block2
|
|
|
|
end
|
|
|
|
|
2005-11-07 08:09:38 +00:00
|
|
|
end
|