Sha256: 53bc7857f08c4637aab4a1db11880012cc2ae50a04360d4517c657f57c04c190

Contents?: true

Size: 633 Bytes

Versions: 3

Compression:

Stored size: 633 Bytes

Contents

require_relative 'runners/runner'
require_relative 'runners/test_runner'
require_relative 'runners/change_runner'
require_relative 'runners/variable_runner'

module Retest
  module Runners
    class NotSupportedError < StandardError; end

    module_function

    def runner_for(command, **opts)
      for_test   = command.include?('<test>')
      for_change = command.include?('<changed>')

      if for_test && for_change then VariableRunner
      elsif for_test            then TestRunner
      elsif for_change          then ChangeRunner
      else                           Runner
      end.new command, **opts
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
retest-2.0.0.pre3 lib/retest/runners.rb
retest-2.0.0.pre2 lib/retest/runners.rb
retest-2.0.0.pre1 lib/retest/runners.rb