FEATURE: log impersonations

This commit is contained in:
Régis Hanol
2014-11-06 10:58:47 +01:00
parent 246f77c98d
commit bb2d538194
5 changed files with 22 additions and 7 deletions

View File

@ -6,7 +6,6 @@ describe Admin::ImpersonateController do
(Admin::ImpersonateController < Admin::AdminController).should == true
end
context 'while logged in as an admin' do
let!(:admin) { log_in(:admin) }
let(:user) { Fabricate(:user) }
@ -21,7 +20,7 @@ describe Admin::ImpersonateController do
context 'create' do
it 'requires a username_or_email parameter' do
lambda { xhr :put, :create }.should raise_error(ActionController::ParameterMissing)
-> { xhr :put, :create }.should raise_error(ActionController::ParameterMissing)
end
it 'returns 404 when that user does not exist' do
@ -37,6 +36,11 @@ describe Admin::ImpersonateController do
context 'success' do
it "logs the impersonation" do
StaffActionLogger.any_instance.expects(:log_impersonate)
xhr :post, :create, username_or_email: user.username
end
it "changes the current user session id" do
xhr :post, :create, username_or_email: user.username
session[:current_user_id].should == user.id
@ -58,6 +62,4 @@ describe Admin::ImpersonateController do
end
end