Sha256: d1ab3d7fe7bb95ab182d17338e0debbd8e016fa4c505d4f2d255c46710620d7e

Contents?: true

Size: 1.19 KB

Versions: 1

Compression:

Stored size: 1.19 KB

Contents

#
# Bolt::Runner
#
# The Runner maps the changed file to the appropriate test file and runs it
#
module Bolt
  class Runner
    attr_accessor :selected, :notifier
    
    # Constructor
    def initialize 
      # find appropriate runner
      runner
      
      $stdout.puts "** Using #{selected.class} \n" if Bolt.verbose?
    end
    
    # Pick a listener to launch
    def runner
      return selected if selected
      
      if Bolt['runner'] and ['legacy_test_unit', 'test_unit', 'rspec', 'cucumber'].include?(Bolt['runner'])
        self.selected= Bolt::Runners::LegacyTestUnit.new if Bolt['runner'] == 'legacy_test_unit'
        self.selected= Bolt::Runners::TestUnit.new if Bolt['runner'] == 'test_unit'
        self.selected= Bolt::Runners::RSpec.new if Bolt['runner'] == 'rspec'
        self.selected= Bolt::Runners::Cucumber.new if Bolt['runner'] == 'cucumber'
        $stdout.puts "** Found 'runner' setting in .bolt" if Bolt.verbose?
        return self.selected
      end
      $stdout.puts "** Determining runner... \n" if Bolt.verbose?
      self.selected= Bolt::Runners::TestUnit.new
      self.selected= Bolt::Runners::RSpec.new  if File.directory?('spec')
      self.selected
    end
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
marcinbunsch-bolt-0.2.8 lib/bolt/runner.rb