aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/application
diff options
context:
space:
mode:
authorCarl Lerche <carllerche@mac.com>2009-10-07 15:21:19 -0700
committerCarl Lerche <carllerche@mac.com>2009-10-08 12:31:09 -0700
commit6d6ae0841c94d3c0ce0c91311028ff7396c44a4a (patch)
tree14030762454f1afffa747fc6202498353c0337d9 /railties/test/application
parentd0965892456e0ec76f9cb95a151d3b8e11622e36 (diff)
downloadrails-6d6ae0841c94d3c0ce0c91311028ff7396c44a4a.tar.gz
rails-6d6ae0841c94d3c0ce0c91311028ff7396c44a4a.tar.bz2
rails-6d6ae0841c94d3c0ce0c91311028ff7396c44a4a.zip
Start moving the initializers into the application object
Diffstat (limited to 'railties/test/application')
-rw-r--r--railties/test/application/initializable_test.rb26
-rw-r--r--railties/test/application/initializer_test.rb33
-rw-r--r--railties/test/application/load_test.rb4
3 files changed, 61 insertions, 2 deletions
diff --git a/railties/test/application/initializable_test.rb b/railties/test/application/initializable_test.rb
new file mode 100644
index 0000000000..38eaec63c0
--- /dev/null
+++ b/railties/test/application/initializable_test.rb
@@ -0,0 +1,26 @@
+require "isolation/abstract_unit"
+
+module ApplicationTests
+ class InitializerTest < Test::Unit::TestCase
+ include ActiveSupport::Testing::Isolation
+
+ def setup
+ build_app
+ boot_rails
+ end
+
+ test "initializers only ever run once" do
+ class MyApp < Rails::Application
+ initializer :counter do
+ $counter += 1
+ end
+ end
+
+ $counter = 0
+ MyApp.initializers[:counter].run
+ MyApp.initializers[:counter].run
+
+ assert_equal 1, $counter
+ end
+ end
+end \ No newline at end of file
diff --git a/railties/test/application/initializer_test.rb b/railties/test/application/initializer_test.rb
new file mode 100644
index 0000000000..9583e1606c
--- /dev/null
+++ b/railties/test/application/initializer_test.rb
@@ -0,0 +1,33 @@
+require "isolation/abstract_unit"
+
+module ApplicationTests
+ class InitializerTest < Test::Unit::TestCase
+ include ActiveSupport::Testing::Isolation
+
+ def setup
+ build_app
+ boot_rails
+ end
+
+ test "initializing an application initializes rails" do
+ class MyApp < Rails::Application ; end
+
+ if RUBY_VERSION < '1.9'
+ $KCODE = ''
+ MyApp.new
+ assert_equal 'UTF8', $KCODE
+ else
+ Encoding.default_external = Encoding::US_ASCII
+ MyApp.new
+ assert_equal Encoding::UTF_8, Encoding.default_external
+ end
+ end
+
+ test "initializing an application adds the application paths to the load path" do
+ class MyApp < Rails::Application ; end
+
+ MyApp.new
+ assert $:.include?("#{app_path}/app/models")
+ end
+ end
+end \ No newline at end of file
diff --git a/railties/test/application/load_test.rb b/railties/test/application/load_test.rb
index 305cd7f273..5c3d35fb16 100644
--- a/railties/test/application/load_test.rb
+++ b/railties/test/application/load_test.rb
@@ -40,14 +40,14 @@ module ApplicationTests
test "Rails.application is available after config.ru has been racked up" do
rackup
- assert Rails.application.new.is_a?(Rails::Application)
+ assert Rails.application.new < Rails::Application
end
# Passenger still uses AC::Dispatcher, so we need to
# keep it working for now
test "deprecated ActionController::Dispatcher still works" do
rackup
- assert ActionController::Dispatcher.new.is_a?(Rails::Application)
+ assert ActionController::Dispatcher.new < Rails::Application
end
test "the config object is available on the application object" do