Sha256: 155394d03acd004a76cbdb251740a224c36b37024c570890027db5238e963305

Contents?: true

Size: 853 Bytes

Versions: 14

Compression:

Stored size: 853 Bytes

Contents

class RoodiTask < Rake::TaskLib
  attr_accessor :name
  attr_accessor :patterns
  attr_accessor :config
  attr_accessor :verbose

  def initialize name = :roodi, patterns = nil, config = nil
    @name      = name
    @patterns  = patterns || %w(app/**/*.rb lib/**/*.rb spec/**/*.rb test/**/*.rb)
    @config    = config
    @verbose   = Rake.application.options.trace

    yield self if block_given?

    define
  end

  def define
    desc "Check for design issues in: #{patterns.join(', ')}"
    task name do
      runner = Roodi::Core::Runner.new

      runner.config = config if config

      patterns.each do |pattern|
        Dir.glob(pattern).each { |file| runner.check_file(file) }
      end

      runner.errors.each {|error| puts error}

      raise "Found #{runner.errors.size} errors." unless runner.errors.empty?
    end
    self
  end
end

Version data entries

14 entries across 14 versions & 4 rubygems

Version Path
threedaymonk-roodi-1.3.8 lib/roodi_task.rb
roodi-3.1.1 lib/roodi_task.rb
roodi-3.1.0 lib/roodi_task.rb
roodi-3.0.1 lib/roodi_task.rb
roodi-3.0.0 lib/roodi_task.rb
metric_fu-roodi-2.2.2 lib/roodi_task.rb
metric_fu-roodi-2.2.1 lib/roodi_task.rb
roodi-2.2.0 lib/roodi_task.rb
metric_fu-roodi-2.2.0 lib/roodi_task.rb
roodi1.9-2.0.1 lib/roodi_task.rb
roodi-2.1.0 lib/roodi_task.rb
roodi-2.0.1 lib/roodi_task.rb
roodi-2.0.0 lib/roodi_task.rb
roodi-1.4.0 lib/roodi_task.rb