module BladeRunner::CI

Public Instance Methods

start() click to toggle source
# File lib/blade_runner/interface/ci.rb, line 5
def start
  @completed_sessions = 0

  log "# Running"
  BR.subscribe("/results") do |details|
    process_result(details)
  end
end

Private Instance Methods

display(message) click to toggle source
# File lib/blade_runner/interface/ci.rb, line 48
def display(message)
  STDOUT.puts message.to_s
end
display_results_and_exit() click to toggle source
# File lib/blade_runner/interface/ci.rb, line 38
def display_results_and_exit
  results = BR::Session.combined_test_results
  display results
  exit results.failed? ? 1 : 0
end
done?() click to toggle source
# File lib/blade_runner/interface/ci.rb, line 34
def done?
  @completed_sessions == (BR.config.expected_sessions || 1)
end
log(message) click to toggle source
# File lib/blade_runner/interface/ci.rb, line 44
def log(message)
  STDERR.print message.to_s
end
process_completion() click to toggle source
# File lib/blade_runner/interface/ci.rb, line 25
def process_completion
  @completed_sessions += 1

  if done?
    log "\n"
    display_results_and_exit
  end
end
process_result(details) click to toggle source
# File lib/blade_runner/interface/ci.rb, line 15
def process_result(details)
  if details.has_key?("pass")
    log details["pass"] ? "." : "F"
  end

  if details["completed"]
    process_completion
  end
end