Sha256: b51611e511dd0ecde185a9a8dcfe703a3a0c9153a04592372758f60a98e269f6

Contents?: true

Size: 1.01 KB

Versions: 20

Compression:

Stored size: 1.01 KB

Contents

module Turn

  # Controls execution of test run.
  #
  class Controller

    #
    def initialize(config=Turn.config)
      @config = config
    end

    #
    attr :config

    #
    def start
      if config.files.empty?
        $stderr.puts "No tests."
        return
      end

      setup

      testrun = runner.new
      testrun.start
    end

    #
    def setup
      config.loadpath.each{ |path| $: << path } unless config.live?
      config.requires.each{ |path| require(path) }
      config.files.each{ |path| require(path) }
    end

    # Insatance of Runner, selected based on format and runmode.
    def runner
      @runner ||= (
        require 'turn/runners/minirunner'

        case config.runmode
        when :marshal
          Turn::MiniRunner
        when :solo
          require 'turn/runners/solorunner'
          Turn::SoloRunner
        when :cross
          require 'turn/runners/crossrunner'
          Turn::CrossRunner
        else
          Turn::MiniRunner
        end
      )
    end

  end

end

Version data entries

20 entries across 20 versions & 5 rubygems

Version Path
arcabouco-0.2.13 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
turn-0.9.7 lib/turn/controller.rb
challah-1.0.0 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
swipe-rails-0.0.5 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-1.0.0.beta3 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-1.0.0.beta2 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-1.0.0.beta vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-0.9.1.beta.3 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-0.9.1.beta vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-0.9.0 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.3/vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
challah-0.8.3 vendor/bundle/gems/turn-0.9.6/lib/turn/controller.rb
turn-0.9.6 lib/turn/controller.rb
challah-0.6.1 vendor/bundle/gems/turn-0.9.5/lib/turn/controller.rb
challah-0.6.0 vendor/bundle/gems/turn-0.9.5/lib/turn/controller.rb
turn-0.9.5 lib/turn/controller.rb
turn-0.9.4 lib/turn/controller.rb
turn-0.9.3 lib/turn/controller.rb
turn-0.9.2 lib/turn/controller.rb
turn-0.9.1 lib/turn/controller.rb