diff options
author | Yehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com> | 2009-05-14 17:38:30 -0700 |
---|---|---|
committer | Yehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com> | 2009-05-14 17:38:30 -0700 |
commit | b6bac73b282c7e500c43810f2a937fc0047e5979 (patch) | |
tree | b234951c42e4c682ef723320287383ac3fff0cf1 /actionpack/examples | |
parent | da65320433088548bc4cff33758e5acd71fd137a (diff) | |
parent | c286952050e8fe16b0f6d64ba0687b52cc8f2ae1 (diff) | |
download | rails-b6bac73b282c7e500c43810f2a937fc0047e5979.tar.gz rails-b6bac73b282c7e500c43810f2a937fc0047e5979.tar.bz2 rails-b6bac73b282c7e500c43810f2a937fc0047e5979.zip |
Merge commit 'origin/master'
Conflicts:
actionpack/lib/action_controller/abstract/base.rb
actionpack/lib/action_controller/routing.rb
Diffstat (limited to 'actionpack/examples')
-rw-r--r-- | actionpack/examples/minimal.rb | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/actionpack/examples/minimal.rb b/actionpack/examples/minimal.rb new file mode 100644 index 0000000000..84a8499daf --- /dev/null +++ b/actionpack/examples/minimal.rb @@ -0,0 +1,34 @@ +$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib" +require 'action_controller' +require 'action_controller/new_base' if ENV['NEW'] +require 'benchmark' + +class BaseController < ActionController::Base + def index + render :text => '' + end +end + +n = (ENV['N'] || 10000).to_i +input = StringIO.new('') + +def call_index(controller, input, n) + n.times do + controller.action(:index).call({ 'rack.input' => input }) + end + + puts controller.name + status, headers, body = controller.action(:index).call({ 'rack.input' => input }) + + puts status + puts headers.to_yaml + puts '---' + body.each do |part| + puts part + end + puts '---' +end + +elapsed = Benchmark.realtime { call_index BaseController, input, n } + +puts "%dms elapsed, %d requests/sec" % [1000 * elapsed, n / elapsed] |