Commit d24e68a66ac59f69ac2493006c9be77762d58cf4

Authored by Thiago Ribeiro
1 parent f9e8687d

Fixed test bugs and add new headers

lib/omniauth/strategies/remote_user.rb
@@ -8,15 +8,11 @@ module OmniAuth @@ -8,15 +8,11 @@ module OmniAuth
8 8
9 def call(env) 9 def call(env)
10 request = Rack::Request.new env 10 request = Rack::Request.new env
11 - cookies = request.cookies  
12 - response = Rack::Response.new  
13 -  
14 - if cookies['gitlab_session'] != nil and !env['HTTP_REMOTE_USER'].blank?  
15 - response.redirect "#{OmniAuth.config.path_prefix}/users/auth/env/"  
16 - else 11 + cookies = request.cookies["_gitlab_session"]
  12 + remote_user = env["HTTP_REMOTE_USER"]
  13 + unless remote_user.empty? && cookies.empty?
17 super(env) 14 super(env)
18 end 15 end
19 -  
20 end 16 end
21 17
22 def request_phase 18 def request_phase
spec/omniauth/strategies/remote_user_spec.rb
@@ -5,12 +5,12 @@ describe 'Test Strategy Remote_User' do @@ -5,12 +5,12 @@ describe 'Test Strategy Remote_User' do
5 Rack::Builder.new do |b| 5 Rack::Builder.new do |b|
6 b.use Rack::Session::Cookie, :secret => 'abc123' 6 b.use Rack::Session::Cookie, :secret => 'abc123'
7 b.use OmniAuth::Strategies::RemoteUser, :fields => [:name, :email], :uid_field => :name 7 b.use OmniAuth::Strategies::RemoteUser, :fields => [:name, :email], :uid_field => :name
8 - b.run lambda { |_env| [200, {}, ['Not Found']] } 8 + b.run lambda { |_env| [200, {}, ['Not Found']] }
9 end.to_app 9 end.to_app
10 end 10 end
11 11
12 context 'request phase' do 12 context 'request phase' do
13 - before(:each) { get '/user/auth/env' } 13 + before(:each) { get '/user/auth/env',{},{'HTTP_COOKIE' => '_gitlab_session=user@myuser','HTTP_REMOTE_USER' => "user@myuser" }}
14 it 'displays a form' do 14 it 'displays a form' do
15 expect(last_response.status).to eq(200) 15 expect(last_response.status).to eq(200)
16 end 16 end