Sha256: f7e1089679296b5b2d47d321ad7187b3f405df3a0d3585f8583d044bd235c0e7
Contents?: true
Size: 1.33 KB
Versions: 2
Compression:
Stored size: 1.33 KB
Contents
require 'rake' require 'shenandoah/runner' require 'shenandoah/server' module Shenandoah class Tasks attr_accessor :locator, :options, :runner def initialize(options = {}) @options = options @locator = if options[:locator] options[:locator] else default_locator_type.new(options) end @runner = Shenandoah::Runner.new(@locator) create_serve_task create_shell_task create_run_task end def run_specs files = @locator.spec_files if ENV['SHEN_SPEC'] files = files.select { |f| f =~ /#{ENV['SHEN_SPEC']}/ } end successes = @runner.run_console(files) if (successes.size != files.size) raise "Shenandoah specs failed!" end end protected def default_locator_type DefaultLocator end def create_serve_task task('shen:serve') do |t| Shenandoah::Server.set :locator, @locator if @options[:project_name] Shenandoah::Server.set :project_name, @options[:project_name] end Shenandoah::Server.run! end end def create_shell_task task('shen:shell') do |t| @runner.run_shell end end def create_run_task task('shen:spec') do |t| run_specs end end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
rsutphin-shenandoah-0.1.0 | lib/shenandoah/tasks.rb |
shenandoah-0.1.0 | lib/shenandoah/tasks.rb |