Merge pull request #3792 from consul/rubocop_find_by

Apply rubocop FindBy rules
This commit is contained in:
Javier Martín
2019-10-24 16:47:21 +02:00
committed by GitHub
29 changed files with 43 additions and 40 deletions

View File

@@ -27,9 +27,6 @@ Rails/EnvironmentComparison:
Rails/Exit:
Enabled: true
Rails/FindBy:
Enabled: true
Rails/FindEach:
Enabled: true

View File

@@ -156,6 +156,13 @@ Rails/ApplicationRecord:
Rails/Date:
Enabled: true
Rails/DynamicFindBy:
Enabled: true
Severity: refactor
Rails/FindBy:
Enabled: true
Rails/HttpPositionalArguments:
Enabled: true

View File

@@ -68,7 +68,7 @@ class Budget
def heading_for_group(group)
return nil unless has_lines_in_group?(group)
investments.where(group: group).first.heading
investments.find_by(group: group).heading
end
def casted_offline?

View File

@@ -30,7 +30,7 @@ class Budget
scope :published, -> { enabled.where.not(kind: "drafting") }
PHASE_KINDS.each do |phase|
define_singleton_method(phase) { find_by_kind(phase) }
define_singleton_method(phase) { find_by(kind: phase) }
end
def next_enabled_phase

View File

@@ -6,7 +6,7 @@ module Relationable
end
def find_related_content(relationable)
RelatedContent.where(parent_relationable: self, child_relationable: relationable).first
RelatedContent.find_by(parent_relationable: self, child_relationable: relationable)
end
def relationed_contents

View File

@@ -5,11 +5,11 @@ module Sluggable
before_validation :generate_slug, if: :generate_slug?
def self.find_by_slug_or_id(slug_or_id)
find_by_slug(slug_or_id) || find_by_id(slug_or_id)
find_by(slug: slug_or_id) || find_by(id: slug_or_id)
end
def self.find_by_slug_or_id!(slug_or_id)
find_by_slug(slug_or_id) || find(slug_or_id)
find_by(slug: slug_or_id) || find(slug_or_id)
end
end

View File

@@ -30,7 +30,7 @@ class Legislation::Question < ApplicationRecord
end
def answer_for_user(user)
answers.where(user: user).first
answers.find_by(user: user)
end
def comments_for_verified_residents_only?

View File

@@ -62,7 +62,7 @@ class Newsletter < ApplicationRecord
end
def log_delivery(recipient_email)
user = User.where(email: recipient_email).first
user = User.find_by(email: recipient_email)
Activity.log(user, :email, self)
end
end

View File

@@ -45,7 +45,7 @@ class Notification < ApplicationRecord
end
def self.existent(user, notifiable)
unread.where(user: user, notifiable: notifiable).first
unread.find_by(user: user, notifiable: notifiable)
end
def notifiable_action

View File

@@ -69,8 +69,7 @@ class Officing::Residence
end
def find_user_by_document
User.where(document_number: document_number,
document_type: document_type).first
User.find_by(document_number: document_number, document_type: document_type)
end
def residence_in_madrid
@@ -96,7 +95,7 @@ class Officing::Residence
end
def geozone
Geozone.where(census_code: district_code).first
Geozone.find_by(census_code: district_code)
end
def district_code

View File

@@ -22,11 +22,11 @@ class Poll::Ballot < ApplicationRecord
end
def ballot
Budget::Ballot.where(poll_ballot: self).first
Budget::Ballot.find_by(poll_ballot: self)
end
def find_investment(investment_id)
ballot.budget.investments.where(id: investment_id).first
ballot.budget.investments.find_by(id: investment_id)
end
def not_already_added?(investment)

View File

@@ -23,7 +23,7 @@ class Poll
end
def assignment_on_poll(poll)
booth_assignments.where(poll: poll).first
booth_assignments.find_by(poll: poll)
end
end
end

View File

@@ -56,7 +56,7 @@ class Poll
def fill_stats_fields
if in_census?
self.gender = census_api_response.gender
self.geozone_id = Geozone.select(:id).where(census_code: census_api_response.district_code).first&.id
self.geozone_id = Geozone.select(:id).find_by(census_code: census_api_response.district_code)&.id
self.age = voter_age(census_api_response.date_of_birth)
end
end

View File

@@ -35,7 +35,7 @@ class Setting < ApplicationRecord
end
def []=(key, value)
setting = where(key: key).first || new(key: key)
setting = find_by(key: key) || new(key: key)
setting.value = value.presence
setting.save!
value
@@ -50,7 +50,7 @@ class Setting < ApplicationRecord
end
def remove(key)
setting = where(key: key).first
setting = find_by(key: key)
setting.destroy if setting.present?
end

View File

@@ -36,7 +36,7 @@ class Signature < ApplicationRecord
end
def assign_signature_to_vote
vote = Vote.where(votable: signable, voter: user).first
vote = Vote.find_by(votable: signable, voter: user)
vote&.update!(signature: self)
end
@@ -55,7 +55,7 @@ class Signature < ApplicationRecord
email: nil,
date_of_birth: @census_api_response.date_of_birth,
gender: @census_api_response.gender,
geozone: Geozone.where(census_code: @census_api_response.district_code).first
geozone: Geozone.find_by(census_code: @census_api_response.district_code)
}
User.create!(user_params)
end
@@ -84,7 +84,7 @@ class Signature < ApplicationRecord
end
def set_user
user = User.where(document_number: document_number).first
user = User.find_by(document_number: document_number)
update(user: user)
end

View File

@@ -237,8 +237,8 @@ class User < ApplicationRecord
end
def take_votes_if_erased_document(document_number, document_type)
erased_user = User.erased.where(document_number: document_number)
.where(document_type: document_type).first
erased_user = User.erased.find_by(document_number: document_number,
document_type: document_type)
if erased_user.present?
take_votes_from(erased_user)
erased_user.update!(document_number: nil, document_type: nil)
@@ -345,8 +345,8 @@ class User < ApplicationRecord
def self.find_for_database_authentication(warden_conditions)
conditions = warden_conditions.dup
login = conditions.delete(:login)
where(conditions.to_hash).where(["lower(email) = ?", login.downcase]).first ||
where(conditions.to_hash).where(["username = ?", login]).first
where(conditions.to_hash).find_by(["lower(email) = ?", login.downcase]) ||
where(conditions.to_hash).find_by(["username = ?", login])
end
def self.find_by_manager_login(manager_login)

View File

@@ -19,7 +19,7 @@ class Verification::Email
end
def user
User.where(document_number: verified_user.document_number).first
User.find_by(document_number: verified_user.document_number)
end
def generate_token

View File

@@ -13,7 +13,7 @@ class Verification::Management::Email
delegate :username, to: :user, allow_nil: true
def user
@user ||= User.where(email: email).first
@user ||= User.find_by(email: email)
end
def user?

View File

@@ -61,7 +61,7 @@ class Verification::Residence
end
def geozone
Geozone.where(census_code: district_code).first
Geozone.find_by(census_code: district_code)
end
def district_code

View File

@@ -8,7 +8,7 @@ class Widget::Feed < ApplicationRecord
end
def setting
Setting.where(key: "homepage.widgets.feeds.#{kind}").first
Setting.find_by(key: "homepage.widgets.feeds.#{kind}")
end
def self.active

View File

@@ -9,7 +9,7 @@ module ActionView
def t(key, options = {})
current_locale = options[:locale].presence || I18n.locale
i18_content = I18nContent.find_by_key(key)
i18_content = I18nContent.find_by(key: key)
translation = I18nContentTranslation.where(i18n_content_id: i18_content&.id,
locale: current_locale).first&.value
translation.presence || translate(key, options)

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("accessibility").nil?
if SiteCustomization::Page.find_by(slug: "accessibility").nil?
page = SiteCustomization::Page.new(slug: "accessibility", status: "published")
page.title = I18n.t("pages.accessibility.title")

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("conditions").nil?
if SiteCustomization::Page.find_by(slug: "conditions").nil?
page = SiteCustomization::Page.new(slug: "conditions", status: "published")
page.print_content_flag = true
page.title = I18n.t("pages.conditions.title")

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("faq").nil?
if SiteCustomization::Page.find_by(slug: "faq").nil?
page = SiteCustomization::Page.new(slug: "faq", status: "published")
page.title = I18n.t("pages.help.faq.page.title")
page.content = "<p>#{I18n.t("pages.help.faq.page.description")}</p>"

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("privacy").nil?
if SiteCustomization::Page.find_by(slug: "privacy").nil?
page = SiteCustomization::Page.new(slug: "privacy", status: "published")
page.print_content_flag = true
page.title = I18n.t("pages.privacy.title")

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("welcome_level_three_verified").nil?
if SiteCustomization::Page.find_by(slug: "welcome_level_three_verified").nil?
page = SiteCustomization::Page.new(slug: "welcome_level_three_verified", status: "published")
page.title = I18n.t("welcome.welcome.title")

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("welcome_level_two_verified").nil?
if SiteCustomization::Page.find_by(slug: "welcome_level_two_verified").nil?
page = SiteCustomization::Page.new(slug: "welcome_level_two_verified", status: "published")
page.title = I18n.t("welcome.welcome.title")

View File

@@ -1,4 +1,4 @@
if SiteCustomization::Page.find_by_slug("welcome_not_verified").nil?
if SiteCustomization::Page.find_by(slug: "welcome_not_verified").nil?
page = SiteCustomization::Page.new(slug: "welcome_not_verified", status: "published")
page.title = I18n.t("welcome.welcome.title")

View File

@@ -25,7 +25,7 @@ describe "Admin custom pages" do
expect(SiteCustomization::Page.count).to be 7
slugs.each do |slug|
expect(SiteCustomization::Page.find_by_slug(slug).status).to eq "published"
expect(SiteCustomization::Page.find_by(slug: slug).status).to eq "published"
end
expect(all("[id^='site_customization_page_']").count).to be 7