Sha256: f307c694658a714b4e474184efd9f16c5e71b3cfd4677542c772f2fb412ba565

Contents?: true

Size: 970 Bytes

Versions: 7

Compression:

Stored size: 970 Bytes

Contents

# frozen_string_literal: true
require 'rubycritic/core/analysed_modules_collection'
require 'rubycritic/analysers/smells/flay'
require 'rubycritic/analysers/smells/flog'
require 'rubycritic/analysers/smells/reek'
require 'rubycritic/analysers/complexity'
require 'rubycritic/analysers/churn'
require 'rubycritic/analysers/attributes'

module RubyCritic
  class AnalysersRunner
    ANALYSERS = [
      Analyser::FlaySmells,
      Analyser::FlogSmells,
      Analyser::ReekSmells,
      Analyser::Complexity,
      Analyser::Attributes,
      Analyser::Churn
    ].freeze

    def initialize(paths)
      @paths = paths
    end

    def run
      ANALYSERS.each do |analyser_class|
        analyser_instance = analyser_class.new(analysed_modules)
        puts "running #{analyser_instance}"
        analyser_instance.run
      end
      analysed_modules
    end

    def analysed_modules
      @analysed_modules ||= AnalysedModulesCollection.new(@paths)
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rubycritic-3.2.0 lib/rubycritic/analysers_runner.rb
rubycritic-3.1.3 lib/rubycritic/analysers_runner.rb
rubycritic-3.1.2 lib/rubycritic/analysers_runner.rb
rubycritic-3.1.1 lib/rubycritic/analysers_runner.rb
rubycritic-3.1.0 lib/rubycritic/analysers_runner.rb
rubycritic-3.0.0 lib/rubycritic/analysers_runner.rb
rubycritic-2.9.4 lib/rubycritic/analysers_runner.rb