class TrackerApi::Endpoints::Iteration

Attributes

client[RW]

Public Class Methods

new(client) click to toggle source
# File lib/tracker_api/endpoints/iteration.rb, line 6
def initialize(client)
  @client = client
end

Public Instance Methods

get(project_id, iteration_number) click to toggle source
# File lib/tracker_api/endpoints/iteration.rb, line 10
def get(project_id, iteration_number)
  data = client.get("/projects/#{project_id}/iterations/#{iteration_number}").body

  Resources::Iteration.new({ client: client, project_id: project_id }.merge(data))
end
get_analytics_cycle_time_details(project_id, iteration_number) click to toggle source
# File lib/tracker_api/endpoints/iteration.rb, line 16
def get_analytics_cycle_time_details(project_id, iteration_number)
  data = client.paginate("/projects/#{project_id}/iterations/#{iteration_number}/analytics/cycle_time_details")
  raise Errors::UnexpectedData, 'Array of cycle time details expected' unless data.is_a? Array

  data.map do |cycle_time_details|
    Resources::CycleTimeDetails.new(
      { project_id: project_id, iteration_number: iteration_number }.merge(cycle_time_details)
    )
  end
end
get_history(project_id, iteration_number) click to toggle source
# File lib/tracker_api/endpoints/iteration.rb, line 27
def get_history(project_id, iteration_number)
  data = client.get("/projects/#{project_id}/history/iterations/#{iteration_number}/days").body
  raise Errors::UnexpectedData, 'Hash of history data expected' unless data.is_a? Hash

  Resources::DailyHistoryContainer.new({ project_id: project_id, iteration_number: iteration_number }.merge(data))
end