Sha256: 8a2e6d44e082a456b18e8398ac857c7f8cb4bbcab209f74d50e847a7064b5803
Contents?: true
Size: 1.18 KB
Versions: 2
Compression:
Stored size: 1.18 KB
Contents
require 'abstract_unit' class DispatcherTest < ActiveSupport::TestCase class Foo cattr_accessor :a, :b end class DummyApp def call(env) [200, {}, 'response'] end end def setup Foo.a, Foo.b = 0, 0 ActionDispatch::Callbacks.reset_callbacks(:call) end def test_before_and_after_callbacks ActionDispatch::Callbacks.before { |*args| Foo.a += 1; Foo.b += 1 } ActionDispatch::Callbacks.after { |*args| Foo.a += 1; Foo.b += 1 } dispatch assert_equal 2, Foo.a assert_equal 2, Foo.b dispatch assert_equal 4, Foo.a assert_equal 4, Foo.b dispatch do |env| raise "error" end rescue nil assert_equal 6, Foo.a assert_equal 6, Foo.b end def test_to_prepare_and_cleanup_delegation prepared = cleaned = false ActionDispatch::Callbacks.to_prepare { prepared = true } ActionDispatch::Callbacks.to_prepare { cleaned = true } ActionDispatch::Reloader.prepare! assert prepared ActionDispatch::Reloader.cleanup! assert cleaned end private def dispatch(&block) ActionDispatch::Callbacks.new(block || DummyApp.new).call( {'rack.input' => StringIO.new('')} ) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activejob-lock-0.0.2 | rails/actionpack/test/dispatch/callbacks_test.rb |
activejob-lock-0.0.1 | rails/actionpack/test/dispatch/callbacks_test.rb |