Sha256: 152fd9ac742e9a78d04eae923722f6849ec8366835cc7c2779c74a0d31d4d125

Contents?: true

Size: 1.05 KB

Versions: 8

Compression:

Stored size: 1.05 KB

Contents

require 'test_helper'

module SessionTest
  class CallbacksTest < ActiveSupport::TestCase
    def setup
     WackyUserSession.reset_callbacks(:persist)
    end

    def test_no_callbacks
      assert_equal [], WackyUserSession._persist_callbacks.map(&:filter)
      session = WackyUserSession.new
      session.send(:persist)
      assert_equal 0, session.counter
    end

    def test_true_callback_cancelling_later_callbacks
      WackyUserSession.persist :persist_by_true, :persist_by_false
      assert_equal [:persist_by_true, :persist_by_false], WackyUserSession._persist_callbacks.map(&:filter)

      session = WackyUserSession.new
      session.send(:persist)
      assert_equal 1, session.counter
    end

    def test_false_callback_continuing_to_later_callbacks
      WackyUserSession.persist :persist_by_false, :persist_by_true
      assert_equal [:persist_by_false, :persist_by_true], WackyUserSession._persist_callbacks.map(&:filter)

      session = WackyUserSession.new
      session.send(:persist)
      assert_equal 2, session.counter
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
authlogic-3.8.0 test/session_test/callbacks_test.rb
authlogic-3.7.0 test/session_test/callbacks_test.rb
authlogic-3.6.1 test/session_test/callbacks_test.rb
authlogic-3.6.0 test/session_test/callbacks_test.rb
authlogic-3.5.0 test/session_test/callbacks_test.rb
authlogic-3.4.6 test/session_test/callbacks_test.rb
authlogic-3.4.5 test/session_test/callbacks_test.rb
authlogic-3.4.4 test/session_test/callbacks_test.rb