Skip to content
Snippets Groups Projects
Unverified Commit 8d900ade authored by Imre (Admin)'s avatar Imre (Admin)
Browse files

Remove PersonalAccessTokensFinder#find_by method

find_by_token is overriden by TokenAuthenticatable which can be easily
missed or confused with #find_by(:token) defined by ActiveRecord. First
step for safer usage is to remove #find_by.
parent ef220c4d
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -3,7 +3,7 @@
class PersonalAccessTokensFinder
attr_accessor :params
 
delegate :build, :find, :find_by, :find_by_token, to: :execute
delegate :build, :find, :find_by_id, :find_by_token, to: :execute
 
def initialize(params = {})
@params = params
Loading
Loading
Loading
Loading
@@ -460,12 +460,6 @@ class User < ActiveRecord::Base
by_username(username).take!
end
 
def find_by_personal_access_token(token_string)
return unless token_string
PersonalAccessTokensFinder.new(state: 'active').find_by_token(token_string)&.user # rubocop: disable CodeReuse/Finder
end
# Returns a user for the given SSH key.
def find_by_ssh_key_id(key_id)
Key.find_by(id: key_id)&.user
Loading
Loading
---
title: Remove PersonalAccessTokensFinder#find_by method
merge_request: 22617
author:
type: fixed
Loading
Loading
@@ -512,11 +512,9 @@ module API
PersonalAccessTokensFinder.new({ user: user, impersonation: true }.merge(options))
end
 
# rubocop: disable CodeReuse/ActiveRecord
def find_impersonation_token
finder.find_by(id: declared_params[:impersonation_token_id]) || not_found!('Impersonation Token')
finder.find_by_id(declared_params[:impersonation_token_id]) || not_found!('Impersonation Token')
end
# rubocop: enable CodeReuse/ActiveRecord
end
 
before { authenticated_as_admin! }
Loading
Loading
Loading
Loading
@@ -92,7 +92,7 @@ describe PersonalAccessTokensFinder do
end
 
describe 'with id' do
subject { finder(params).find_by(id: active_personal_access_token.id) }
subject { finder(params).find_by_id(active_personal_access_token.id) }
 
it { is_expected.to eq(active_personal_access_token) }
 
Loading
Loading
@@ -106,7 +106,7 @@ describe PersonalAccessTokensFinder do
end
 
describe 'with token' do
subject { finder(params).find_by(token: active_personal_access_token.token) }
subject { finder(params).find_by_token(active_personal_access_token.token) }
 
it { is_expected.to eq(active_personal_access_token) }
 
Loading
Loading
@@ -207,7 +207,7 @@ describe PersonalAccessTokensFinder do
end
 
describe 'with id' do
subject { finder(params).find_by(id: active_personal_access_token.id) }
subject { finder(params).find_by_id(active_personal_access_token.id) }
 
it { is_expected.to eq(active_personal_access_token) }
 
Loading
Loading
@@ -221,7 +221,7 @@ describe PersonalAccessTokensFinder do
end
 
describe 'with token' do
subject { finder(params).find_by(token: active_personal_access_token.token) }
subject { finder(params).find_by_token(active_personal_access_token.token) }
 
it { is_expected.to eq(active_personal_access_token) }
 
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment