mirror of
https://github.com/opf/openproject.git
synced 2026-06-14 03:30:14 +00:00
38cdf2e2dd
Also remove before filter that worked around some session cookie bug in Rails. This workaround wasn't effective anyway, since our session cookie names don't contain chiliproject any more.
80 lines
2.2 KiB
Ruby
80 lines
2.2 KiB
Ruby
#-- copyright
|
|
# OpenProject is a project management system.
|
|
#
|
|
# Copyright (C) 2012-2013 the OpenProject Team
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License version 3.
|
|
#
|
|
# See doc/COPYRIGHT.rdoc for more details.
|
|
#++
|
|
|
|
require 'spec_helper'
|
|
|
|
describe ApplicationController do
|
|
let(:user) { FactoryGirl.create(:user, :lastname => "Crazy! Name with \r\n Newline") }
|
|
|
|
# Fake controller to test calling an action
|
|
controller do
|
|
def index
|
|
# just do anything that doesn't require an extra template
|
|
render_404
|
|
end
|
|
end
|
|
|
|
describe 'with log_requesting_user enabled' do
|
|
before do
|
|
Setting.stub(:log_requesting_user?).and_return(true)
|
|
end
|
|
|
|
it 'should log the current user' do
|
|
messages = []
|
|
Rails.logger.should_receive(:info).at_least(:once) do |message|
|
|
messages << message
|
|
end
|
|
|
|
as_logged_in_user(user) do
|
|
get(:index)
|
|
end
|
|
|
|
filtered_messages = messages.select { |message| message.start_with? 'OpenProject User' }
|
|
filtered_messages.length.should == 1
|
|
filtered_messages[0].should == "OpenProject User: #{user.firstname} Crazy! Name with \#\# " +
|
|
"Newline (#{user.login} ID: #{user.id} <#{user.mail}>)"
|
|
end
|
|
|
|
it 'should log an anonymous user' do
|
|
messages = []
|
|
Rails.logger.should_receive(:info).at_least(:once) do |message|
|
|
messages << message
|
|
end
|
|
|
|
# no login, so this is done as Anonymous
|
|
get(:index)
|
|
|
|
filtered_messages = messages.select { |message| message.start_with? 'OpenProject User' }
|
|
filtered_messages.length.should == 1
|
|
filtered_messages[0].should == "OpenProject User: Anonymous"
|
|
end
|
|
end
|
|
describe 'with log_requesting_user disabled' do
|
|
before do
|
|
Setting.stub(:log_requesting_user?).and_return(false)
|
|
end
|
|
|
|
it 'should not log the current user' do
|
|
messages = []
|
|
Rails.logger.stub(:info) do |message|
|
|
messages << message
|
|
end
|
|
|
|
as_logged_in_user(user) do
|
|
get(:index)
|
|
end
|
|
|
|
filtered_messages = messages.select { |message| message.start_with? 'OpenProject User' }
|
|
filtered_messages.length.should == 0
|
|
end
|
|
end
|
|
end
|