class Circle::CLI::Build

Attributes

project[R]

Public Class Methods

new(project, build = {}) click to toggle source
Calls superclass method
# File lib/circle/cli/build.rb, line 9
def initialize(project, build = {})
  @project = project
  super(build)
end

Public Instance Methods

build_num() click to toggle source
# File lib/circle/cli/build.rb, line 20
def build_num
  self[:build_num]
end
cancel!() click to toggle source
# File lib/circle/cli/build.rb, line 52
def cancel!
  project.request CircleCi::Build, :cancel, build_num
end
color() click to toggle source
# File lib/circle/cli/build.rb, line 40
def color
  color_for self[:status]
end
details() click to toggle source
# File lib/circle/cli/build.rb, line 56
def details
  @details ||= project.request CircleCi::Build, :get, build_num
end
failed?() click to toggle source
# File lib/circle/cli/build.rb, line 28
def failed?
  self[:outcome] == 'failed'
end
failing_tests() click to toggle source
# File lib/circle/cli/build.rb, line 72
def failing_tests
  tests.select(&failure_filter)
end
finished?() click to toggle source
# File lib/circle/cli/build.rb, line 24
def finished?
  !self[:outcome].nil?
end
formatted_start_time() click to toggle source
# File lib/circle/cli/build.rb, line 44
def formatted_start_time
  format_time(self[:start_time]) || 'Not started'
end
formatted_stop_time() click to toggle source
# File lib/circle/cli/build.rb, line 48
def formatted_stop_time
  format_time(self[:start_time]) || 'Not finished'
end
passing_tests() click to toggle source
# File lib/circle/cli/build.rb, line 68
def passing_tests
  tests.reject(&failure_filter)
end
preload() click to toggle source
# File lib/circle/cli/build.rb, line 14
def preload
  tests
  details
  self
end
status() click to toggle source
# File lib/circle/cli/build.rb, line 32
def status
  self[:status].tr('_', ' ').capitalize
end
steps() click to toggle source
# File lib/circle/cli/build.rb, line 60
def steps
  details['steps'].map { |step| Step.new(step) }
end
subject() click to toggle source
# File lib/circle/cli/build.rb, line 36
def subject
  truncate self[:subject]
end
tests() click to toggle source
# File lib/circle/cli/build.rb, line 64
def tests
  @tests ||= project.request(CircleCi::Build, :tests, build_num)['tests']
end

Private Instance Methods

failure_filter() click to toggle source
# File lib/circle/cli/build.rb, line 78
def failure_filter
  lambda { |t| t['result'] == 'failure' }
end