Sha256: a92745b1669a597e752e38618502c826499f925da3259d16ebc1ea1ef57723ff

Contents?: true

Size: 957 Bytes

Versions: 13

Compression:

Stored size: 957 Bytes

Contents

require 'helper'

class ControllerTest < ActiveSupport::TestCase
  include Challah
  
  context "A controller" do
    setup do
      @user = Factory(:user)
      @controller = MockController.new
    end
    
    should "be logged out by default" do
      assert_equal false, @controller.send(:current_user?)
    end
    
    should "have logged_in? and current_user methods" do      
      session = Session.create(@user)
      session.save    
      
      assert_equal true, @controller.send(:current_user?)
      assert_equal @user, @controller.send(:current_user)
    end
    
    should "redirect to login page if user is not logged in" do
      @controller.request.url = 'http://example.com/protected-page'
      @controller.stubs(:logged_in?).returns(false)
      @controller.expects(:redirect_to)
      @controller.send(:login_required)
      
      assert_equal @controller.session[:return_to], 'http://example.com/protected-page'
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
challah-0.5.2 test/controller_test.rb
challah-0.5.1 test/controller_test.rb
challah-0.5.0 test/controller_test.rb
challah-0.4.1 test/controller_test.rb
challah-0.4.0 test/controller_test.rb
challah-0.3.5 test/controller_test.rb
challah-0.3.4 test/controller_test.rb
challah-0.3.3 test/controller_test.rb
challah-0.3.2 test/controller_test.rb
challah-0.3.1 test/controller_test.rb
challah-0.3.0 test/controller_test.rb
challah-0.2.1 test/controller_test.rb
challah-0.2.0 test/controller_test.rb