Commit e78a4903 authored by Douwe Maan's avatar Douwe Maan

Enable Style/ConditionalAssignment

parent c809b104
......@@ -965,5 +965,8 @@ Style/ColonMethodCall:
Style/CommentAnnotation:
Enabled: false
Style/ConditionalAssignment:
Enabled: true
Style/DoubleNegation:
Enabled: false
......@@ -38,13 +38,6 @@ RSpec/SingleArgumentMessageChain:
Exclude:
- 'spec/requests/api/internal_spec.rb'
# Offense count: 32
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, SingleLineConditionsOnly.
# SupportedStyles: assign_to_condition, assign_inside_condition
Style/ConditionalAssignment:
Enabled: false
# Offense count: 6
# Cop supports --auto-correct.
Style/EachWithObject:
......
......@@ -101,12 +101,12 @@ module CreatesCommit
# TODO: We should really clean this up
def set_commit_variables
if can?(current_user, :push_code, @project)
@mr_source_project = if can?(current_user, :push_code, @project)
# Edit file in this project
@mr_source_project = @project
@project
else
# Merge request from fork to this project
@mr_source_project = current_user.fork_of(@project)
current_user.fork_of(@project)
end
# Merge request to this project
......
......@@ -76,10 +76,10 @@ class Projects::GitHttpClientController < Projects::ApplicationController
return @project if defined?(@project)
project_id, _ = project_id_with_suffix
if project_id.blank?
@project = nil
@project = if project_id.blank?
nil
else
@project = Project.find_by_full_path("#{params[:namespace_id]}/#{project_id}")
Project.find_by_full_path("#{params[:namespace_id]}/#{project_id}")
end
end
......
......@@ -407,13 +407,13 @@ class Projects::MergeRequestsController < Projects::ApplicationController
end
def merge_widget_refresh
if merge_request.merge_when_build_succeeds
@status = :merge_when_build_succeeds
@status = if merge_request.merge_when_build_succeeds
:merge_when_build_succeeds
else
# Only MRs that can be merged end in this action
# MR can be already picked up for merge / merged already or can be waiting for worker to be picked up
# in last case it does not have any special status. Possible error is handled inside widget js function
@status = :success
:success
end
render 'merge'
......
......@@ -16,10 +16,10 @@ class SessionsController < Devise::SessionsController
def new
set_minimum_password_length
if Gitlab.config.ldap.enabled
@ldap_servers = Gitlab::LDAP::Config.servers
@ldap_servers = if Gitlab.config.ldap.enabled
Gitlab::LDAP::Config.servers
else
@ldap_servers = []
[]
end
super
......
......@@ -28,10 +28,10 @@ class NotesFinder
private
def init_collection
if @params[:target_id]
@notes = on_target(@params[:target_type], @params[:target_id])
@notes = if @params[:target_id]
on_target(@params[:target_type], @params[:target_id])
else
@notes = notes_of_any_type
notes_of_any_type
end
end
......
......@@ -69,10 +69,10 @@ module ApplicationHelper
end
def avatar_icon(user_or_email = nil, size = nil, scale = 2)
if user_or_email.is_a?(User)
user = user_or_email
user = if user_or_email.is_a?(User)
user_or_email
else
user = User.find_by_any_email(user_or_email.try(:downcase))
User.find_by_any_email(user_or_email.try(:downcase))
end
if user
......
......@@ -153,15 +153,15 @@ module BlobHelper
# Because we are opionated we set the cache headers ourselves.
response.cache_control[:public] = @project.public?
if @ref && @commit && @ref == @commit.id
response.cache_control[:max_age] = if @ref && @commit && @ref == @commit.id
# This is a link to a commit by its commit SHA. That means that the blob
# is immutable. The only reason to invalidate the cache is if the commit
# was deleted or if the user lost access to the repository.
response.cache_control[:max_age] = Blob::CACHE_TIME_IMMUTABLE
Blob::CACHE_TIME_IMMUTABLE
else
# A branch or tag points at this blob. That means that the expected blob
# value may change over time.
response.cache_control[:max_age] = Blob::CACHE_TIME
Blob::CACHE_TIME
end
response.etag = @blob.id
......
class RepositoryCheckMailer < BaseMailer
def notify(failed_count)
if failed_count == 1
@message = "One project failed its last repository check"
@message = if failed_count == 1
"One project failed its last repository check"
else
@message = "#{failed_count} projects failed their last repository check"
"#{failed_count} projects failed their last repository check"
end
mail(
......
......@@ -122,10 +122,10 @@ class Commit
def full_title
return @full_title if @full_title
if safe_message.blank?
@full_title = no_commit_message
@full_title = if safe_message.blank?
no_commit_message
else
@full_title = safe_message.split("\n", 2).first
safe_message.split("\n", 2).first
end
end
......
......@@ -13,10 +13,10 @@ module CaseSensitivity
params.each do |key, value|
column = ActiveRecord::Base.connection.quote_table_name(key)
if cast_lower
condition = "LOWER(#{column}) = LOWER(:value)"
condition = if cast_lower
"LOWER(#{column}) = LOWER(:value)"
else
condition = "#{column} = :value"
"#{column} = :value"
end
criteria = criteria.where(condition, value: value)
......
......@@ -46,10 +46,10 @@ module Sortable
where("label_links.target_id = #{target_column}").
reorder(nil)
if target_type_column
query = query.where("label_links.target_type = #{target_type_column}")
query = if target_type_column
query.where("label_links.target_type = #{target_type_column}")
else
query = query.where(label_links: { target_type: target_type })
query.where(label_links: { target_type: target_type })
end
query = query.where.not(title: excluded_labels) if excluded_labels.present?
......
......@@ -188,10 +188,10 @@ module Network
end
# and mark it as reserved
if parent_time.nil?
min_time = leaves.first.time
min_time = if parent_time.nil?
leaves.first.time
else
min_time = parent_time + 1
parent_time + 1
end
max_time = leaves.last.time
......
......@@ -492,12 +492,12 @@ class Project < ActiveRecord::Base
end
def add_import_job
if forked?
job_id = RepositoryForkWorker.perform_async(id, forked_from_project.repository_storage_path,
job_id = if forked?
RepositoryForkWorker.perform_async(id, forked_from_project.repository_storage_path,
forked_from_project.path_with_namespace,
self.namespace.full_path)
else
job_id = RepositoryImportWorker.perform_async(self.id)
RepositoryImportWorker.perform_async(self.id)
end
if job_id
......
......@@ -72,12 +72,12 @@ class PushoverService < Service
before = data[:before]
after = data[:after]
if Gitlab::Git.blank_ref?(before)
message = "#{data[:user_name]} pushed new branch \"#{ref}\"."
message = if Gitlab::Git.blank_ref?(before)
"#{data[:user_name]} pushed new branch \"#{ref}\"."
elsif Gitlab::Git.blank_ref?(after)
message = "#{data[:user_name]} deleted branch \"#{ref}\"."
"#{data[:user_name]} deleted branch \"#{ref}\"."
else
message = "#{data[:user_name]} push to branch \"#{ref}\"."
"#{data[:user_name]} push to branch \"#{ref}\"."
end
if data[:total_commits_count] > 0
......
......@@ -408,11 +408,11 @@ module SystemNoteService
# Initial scope should be system notes of this noteable type
notes = Note.system.where(noteable_type: noteable.class)
if noteable.is_a?(Commit)
notes = if noteable.is_a?(Commit)
# Commits have non-integer IDs, so they're stored in `commit_id`
notes = notes.where(commit_id: noteable.id)
notes.where(commit_id: noteable.id)
else
notes = notes.where(noteable_id: noteable.id)
notes.where(noteable_id: noteable.id)
end
notes_for_mentioner(mentioner, noteable, notes).exists?
......
......@@ -15,10 +15,10 @@ class Settings < Settingslogic
end
def build_gitlab_ci_url
if on_standard_port?(gitlab)
custom_port = nil
custom_port = if on_standard_port?(gitlab)
nil
else
custom_port = ":#{gitlab.port}"
":#{gitlab.port}"
end
[gitlab.protocol,
"://",
......@@ -201,10 +201,10 @@ if github_settings
github_settings["args"] ||= Settingslogic.new({})
if github_settings["url"].include?(github_default_url)
github_settings["args"]["client_options"] = OmniAuth::Strategies::GitHub.default_options[:client_options]
github_settings["args"]["client_options"] = if github_settings["url"].include?(github_default_url)
OmniAuth::Strategies::GitHub.default_options[:client_options]
else
github_settings["args"]["client_options"] = {
{
"site" => File.join(github_settings["url"], "api/v3"),
"authorize_url" => File.join(github_settings["url"], "login/oauth/authorize"),
"token_url" => File.join(github_settings["url"], "login/oauth/access_token")
......
......@@ -160,10 +160,10 @@ module Banzai
data = data_attributes_for(link_content || match, project, object, link: !!link_content)
if matches.names.include?("url") && matches[:url]
url = matches[:url]
url = if matches.names.include?("url") && matches[:url]
matches[:url]
else
url = url_for_object_cached(object, project)
url_for_object_cached(object, project)
end
content = link_content || object_link_text(object, matches)
......
......@@ -149,10 +149,10 @@ module Banzai
name, reference = *parts.compact.map(&:strip)
end
if url?(reference)
href = reference
href = if url?(reference)
reference
else
href = ::File.join(project_wiki_base_path, reference)
::File.join(project_wiki_base_path, reference)
end
content_tag(:a, name || reference, href: href, class: 'gfm')
......
......@@ -39,10 +39,10 @@ module Banzai
projects_per_reference.each do |path, project|
issue_ids = references_per_project[path]
if project.default_issues_tracker?
issues = project.issues.where(iid: issue_ids.to_a)
issues = if project.default_issues_tracker?
project.issues.where(iid: issue_ids.to_a)
else
issues = issue_ids.map { |id| ExternalIssue.new(id, project) }
issue_ids.map { |id| ExternalIssue.new(id, project) }
end
issues.each do |issue|
......
......@@ -69,10 +69,10 @@ module Gitlab
end
JSON.parse(File.read(path)).map do |hash|
if digest
fname = "#{hash['unicode']}-#{hash['digest']}"
fname = if digest
"#{hash['unicode']}-#{hash['digest']}"
else
fname = hash['unicode']
hash['unicode']
end
{ name: hash['name'], path: File.join(base, prefix, "#{fname}.png") }
......
......@@ -91,10 +91,10 @@ module Gitlab
our_highlight = Gitlab::Highlight.highlight(our_path, our_file, repository: repository).lines
lines.each do |line|
if line.type == 'old'
line.rich_text = their_highlight[line.old_line - 1].try(:html_safe)
line.rich_text = if line.type == 'old'
their_highlight[line.old_line - 1].try(:html_safe)
else
line.rich_text = our_highlight[line.new_line - 1].try(:html_safe)
our_highlight[line.new_line - 1].try(:html_safe)
end
end
end
......
......@@ -140,10 +140,10 @@ module Gitlab
def find_diff_file(repository)
# We're at the initial commit, so just get that as we can't compare to anything.
if Gitlab::Git.blank_ref?(start_sha)
compare = Gitlab::Git::Commit.find(repository.raw_repository, head_sha)
compare = if Gitlab::Git.blank_ref?(start_sha)
Gitlab::Git::Commit.find(repository.raw_repository, head_sha)
else
compare = Gitlab::Git::Compare.new(
Gitlab::Git::Compare.new(
repository.raw_repository,
start_sha,
head_sha
......
......@@ -31,10 +31,10 @@ module Gitlab
private
def select_body(message)
if message.multipart?
part = message.text_part || message.html_part || message
part = if message.multipart?
message.text_part || message.html_part || message
else
part = message
message
end
decoded = fix_charset(part)
......
......@@ -143,10 +143,10 @@ module Gitlab
# signature this would break things. As a result we'll make sure the
# generated method _only_ accepts regular arguments if the underlying
# method also accepts them.
if method.arity == 0
args_signature = ''
args_signature = if method.arity == 0
''
else
args_signature = '*args'
'*args'
end
proxy_module.class_eval <<-EOF, __FILE__, __LINE__ + 1
......
......@@ -28,10 +28,10 @@ module Gitlab
if external_users_enabled? && @user
# Check if there is overlap between the user's groups and the external groups
# setting then set user as external or internal.
if (auth_hash.groups & Gitlab::Saml::Config.external_groups).empty?
@user.external = false
@user.external = if (auth_hash.groups & Gitlab::Saml::Config.external_groups).empty?
false
else
@user.external = true
true
end
end
......
......@@ -56,10 +56,10 @@ module Gitlab
def issues
issues = IssuesFinder.new(current_user).execute.where(project_id: project_ids_relation)
if query =~ /#(\d+)\z/
issues = issues.where(iid: $1)
issues = if query =~ /#(\d+)\z/
issues.where(iid: $1)
else
issues = issues.full_search(query)
issues.full_search(query)
end
issues.order('updated_at DESC')
......@@ -73,11 +73,10 @@ module Gitlab
def merge_requests
merge_requests = MergeRequestsFinder.new(current_user).execute.in_projects(project_ids_relation)
if query =~ /[#!](\d+)\z/
merge_requests = merge_requests.where(iid: $1)
merge_requests = if query =~ /[#!](\d+)\z/
merge_requests.where(iid: $1)
else
merge_requests = merge_requests.full_search(query)
merge_requests.full_search(query)
end
merge_requests.order('updated_at DESC')
end
......
......@@ -94,10 +94,10 @@ module Gitlab
private
def raw_explain(query)
if Gitlab::Database.postgresql?
explain = "EXPLAIN ANALYZE #{query};"
explain = if Gitlab::Database.postgresql?
"EXPLAIN ANALYZE #{query};"
else
explain = "EXPLAIN #{query};"
"EXPLAIN #{query};"
end
ActiveRecord::Base.connection.execute(explain)
......
......@@ -40,10 +40,10 @@ describe 'issuable list', feature: true do
def create_issuables(issuable_type)
3.times do
if issuable_type == :issue
issuable = create(:issue, project: project, author: user)
issuable = if issuable_type == :issue
create(:issue, project: project, author: user)
else
issuable = create(:merge_request, title: FFaker::Lorem.sentence, source_project: project, source_branch: FFaker::Name.name)
create(:merge_request, title: FFaker::Lorem.sentence, source_project: project, source_branch: FFaker::Name.name)
end
2.times do
......
......@@ -3,10 +3,10 @@ shared_examples 'issuables list meta-data' do |issuable_type, action = nil|
@issuable_ids = []
2.times do
if issuable_type == :issue
issuable = create(issuable_type, project: project)
issuable = if issuable_type == :issue
create(issuable_type, project: project)
else
issuable = create(issuable_type, title: FFaker::Lorem.sentence, source_project: project, source_branch: FFaker::Name.name)
create(issuable_type, title: FFaker::Lorem.sentence, source_project: project, source_branch: FFaker::Name.name)
end
@issuable_ids << issuable.id
......
......@@ -15,10 +15,10 @@ module LoginHelpers
# user = create(:user)
# login_as(user)
def login_as(user_or_role)
if user_or_role.kind_of?(User)
@user = user_or_role
@user = if user_or_role.kind_of?(User)
user_or_role
else
@user = create(user_or_role)
create(user_or_role)
end
login_with(@user)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment