class Jirify::Models::Sprint

Public Class Methods

issues_in_current_sprint(only_mine = false, max_results = 200) click to toggle source
# File lib/jirify/models/sprint.rb, line 5
def issues_in_current_sprint(only_mine = false, max_results = 200)
  issues = client.Issue.jql current_sprint_jql(only_mine), max_results: max_results
  issues.map { |issue| Issue.new issue }
end

Protected Class Methods

current_sprint_jql(only_mine) click to toggle source
# File lib/jirify/models/sprint.rb, line 12
def current_sprint_jql(only_mine)
  labels = Config.options['filter_by_labels']
  labels = labels.join(', ') if labels
  projects = Config.projects.join(', ')

  projects_clause = "project in (#{projects})"
  labels_clause = "AND labels in (#{labels})" if labels
  mine_clause   = "AND assignee='#{Config.username}'" if only_mine
  sprint_clause = 'AND sprint in openSprints()'

  "#{projects_clause} #{sprint_clause} #{labels_clause} #{mine_clause}"
end