Ruby rubocops 错误 - 分配分支条件大小太高
Ruby rubocops error - assignment branch condition size too high
我有一个简单的方法,可以从 Jira 项目中获取数据,并为用户分配待完成的任务。有没有办法缩小下面的方法以避免 rubocop condition size too high
错误?
def initialize
@project = Jira::ProjectConnection.new('project_key').call
end
def assigned_task_list
project.issues.map do |issue|
next unless issue.fields.dig('status', 'name') != 'Done' && !issue.fields.dig('assignee', 'name').nil?
{
key: issue.key,
name: issue.fields.dig('assignee', 'name'),
email: issue.fields.dig('assignee', 'emailAddress'),
status: issue.fields.dig('status', 'name')
}
end
end
大概是这样的?
def assigned_task_list
assigned_tasks.map do |issue|
fields = issue.fields
{
key: issue.key,
name: fields.dig('assignee', 'name'),
email: fields.dig('assignee', 'emailAddress'),
status: fields.dig('status', 'name')
}
end
end
private
def assigned_tasks
project.issues.select do |issue|
issue.fields.dig('status', 'name') != 'Done' &&
issue.fields.dig('assignee', 'name')
end
end
我有一个简单的方法,可以从 Jira 项目中获取数据,并为用户分配待完成的任务。有没有办法缩小下面的方法以避免 rubocop condition size too high
错误?
def initialize
@project = Jira::ProjectConnection.new('project_key').call
end
def assigned_task_list
project.issues.map do |issue|
next unless issue.fields.dig('status', 'name') != 'Done' && !issue.fields.dig('assignee', 'name').nil?
{
key: issue.key,
name: issue.fields.dig('assignee', 'name'),
email: issue.fields.dig('assignee', 'emailAddress'),
status: issue.fields.dig('status', 'name')
}
end
end
大概是这样的?
def assigned_task_list
assigned_tasks.map do |issue|
fields = issue.fields
{
key: issue.key,
name: fields.dig('assignee', 'name'),
email: fields.dig('assignee', 'emailAddress'),
status: fields.dig('status', 'name')
}
end
end
private
def assigned_tasks
project.issues.select do |issue|
issue.fields.dig('status', 'name') != 'Done' &&
issue.fields.dig('assignee', 'name')
end
end