| |   |
| 14 | 14 | |
| 15 | 15 | # Store the given user in the session. |
| 16 | 16 | def current_user=(new_user) |
| 17 | | session[:user] = (new_user.nil? || new_user.is_a?(Symbol)) ? nil : new_user.id |
| 17 | session[:user_id] = (new_user.nil? || new_user.is_a?(Symbol)) ? nil : new_user.id |
| 18 | 18 | @current_user = new_user |
| 19 | 19 | end |
| 20 | 20 | |
| … | … | |
| 49 | 49 | # skip_before_filter :login_required |
| 50 | 50 | # |
| 51 | 51 | def login_required |
| 52 | | authorized? ? true : access_denied |
| 52 | authorized? || access_denied |
| 53 | 53 | end |
| 54 | 54 | |
| 55 | 55 | # Redirect as appropriate when an access request fails. |
| … | … | |
| 97 | 97 | |
| 98 | 98 | # Called from #current_user. First attempt to login by the user id stored in the session. |
| 99 | 99 | def login_from_session |
| 100 | | self.current_user = User.find_by_id(session[:user]) if session[:user] |
| 100 | self.current_user = User.find_by_id(session[:user_id]) if session[:user_id] |
| 101 | 101 | end |
| 102 | 102 | |
| 103 | 103 | # Called from #current_user. Now, attempt to login by basic authentication information. |
| toggle raw diff |
--- a/lib/authenticated_system.rb
+++ b/lib/authenticated_system.rb
@@ -14,7 +14,7 @@ module AuthenticatedSystem
# Store the given user in the session.
def current_user=(new_user)
- session[:user] = (new_user.nil? || new_user.is_a?(Symbol)) ? nil : new_user.id
+ session[:user_id] = (new_user.nil? || new_user.is_a?(Symbol)) ? nil : new_user.id
@current_user = new_user
end
@@ -49,7 +49,7 @@ module AuthenticatedSystem
# skip_before_filter :login_required
#
def login_required
- authorized? ? true : access_denied
+ authorized? || access_denied
end
# Redirect as appropriate when an access request fails.
@@ -97,7 +97,7 @@ module AuthenticatedSystem
# Called from #current_user. First attempt to login by the user id stored in the session.
def login_from_session
- self.current_user = User.find_by_id(session[:user]) if session[:user]
+ self.current_user = User.find_by_id(session[:user_id]) if session[:user_id]
end
# Called from #current_user. Now, attempt to login by basic authentication information. |
| |   |
| 1 | 1 | module AuthenticatedTestHelper |
| 2 | 2 | # Sets the current user in the session from the user fixtures. |
| 3 | 3 | def login_as(user) |
| 4 | | @request.session[:user] = user ? users(user).id : nil |
| 4 | @request.session[:user_id] = user ? users(user).id : nil |
| 5 | 5 | end |
| 6 | 6 | |
| 7 | 7 | def authorize_as(user) |
| 8 | | @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil |
| 9 | | end |
| 10 | | |
| 11 | | # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 |
| 12 | | def assert_difference(expressions, difference = 1, message = nil, &block) |
| 13 | | expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } } |
| 14 | | |
| 15 | | original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call } |
| 16 | | yield |
| 17 | | expression_evaluations.each_with_index do |expression, i| |
| 18 | | assert_equal original_values[i] + difference, expression.call, message |
| 19 | | end |
| 20 | | end |
| 21 | | |
| 22 | | # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3 |
| 23 | | def assert_no_difference(expressions, message = nil, &block) |
| 24 | | assert_difference expressions, 0, message, &block |
| 8 | @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).email}:test")}" : nil |
| 25 | 9 | end |
| 26 | 10 | end |
| toggle raw diff |
--- a/lib/authenticated_test_helper.rb
+++ b/lib/authenticated_test_helper.rb
@@ -1,26 +1,10 @@
module AuthenticatedTestHelper
# Sets the current user in the session from the user fixtures.
def login_as(user)
- @request.session[:user] = user ? users(user).id : nil
+ @request.session[:user_id] = user ? users(user).id : nil
end
def authorize_as(user)
- @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).login}:test")}" : nil
- end
-
- # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3
- def assert_difference(expressions, difference = 1, message = nil, &block)
- expression_evaluations = [expressions].flatten.collect{|expression| lambda { eval(expression, block.binding) } }
-
- original_values = expression_evaluations.inject([]) { |memo, expression| memo << expression.call }
- yield
- expression_evaluations.each_with_index do |expression, i|
- assert_equal original_values[i] + difference, expression.call, message
- end
- end
-
- # taken from edge rails / rails 2.0. Only needed on Rails 1.2.3
- def assert_no_difference(expressions, message = nil, &block)
- assert_difference expressions, 0, message, &block
+ @request.env["HTTP_AUTHORIZATION"] = user ? "Basic #{Base64.encode64("#{users(user).email}:test")}" : nil
end
end
\ No newline at end of file |