Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

root/branches/2-1-caching/railties/lib/console_app.rb

Revision 7640, 0.9 kB (checked in by bitsweat, 1 year ago)

Move Railties' Dispatcher to ActionController::Dispatcher, introduce before_ and after_dispatch callbacks, and warm up to non-CGI requests.

Line 
1 require 'action_controller/integration'
2
3 # work around the at_exit hook in test/unit, which kills IRB
4 Test::Unit.run = true if Test::Unit.respond_to?(:run=)
5
6 # reference the global "app" instance, created on demand. To recreate the
7 # instance, pass a non-false value as the parameter.
8 def app(create=false)
9   @app_integration_instance = nil if create
10   @app_integration_instance ||= new_session do |sess|
11     sess.host! "www.example.com"
12   end
13 end
14
15 # create a new session. If a block is given, the new session will be yielded
16 # to the block before being returned.
17 def new_session
18   session = ActionController::Integration::Session.new
19   yield session if block_given?
20   session
21 end
22
23 #reloads the environment
24 def reload!
25   puts "Reloading..."
26   dispatcher = ActionController::Dispatcher.new($stdout)
27   dispatcher.cleanup_application(true)
28   dispatcher.prepare_application(true)
29   true
30 end
Note: See TracBrowser for help on using the browser.