class Corleone::Runner::RSpec

Public Class Methods

new(payload, logger) click to toggle source
# File lib/corleone/runner/rspec.rb, line 8
def initialize(payload, logger)
  @payload = payload
  @logger = logger
end

Public Instance Methods

command(msg) click to toggle source
# File lib/corleone/runner/rspec.rb, line 13
def command(msg)
  files = msg.payload.join(' ')
  "rspec #{files}"
end
run_each(input_queue, output_queue) click to toggle source
# File lib/corleone/runner/rspec.rb, line 18
def run_each(input_queue, output_queue)
  loop do
    example = input_queue.pop
    @logger.debug("rspec examples received: #{example}")

    break if example.instance_of?(Corleone::Message::Stop)

    system(command(example))

    output_queue << Corleone::Message::Finished.new
  end
end