Sha256: 8e518cd5bd61c34ef251ebeecf47cce3ff1149b171e40e9690d2ce3e6d739863

Contents?: true

Size: 908 Bytes

Versions: 8

Compression:

Stored size: 908 Bytes

Contents

# frozen_string_literal: true

require 'rubycritic/source_control_systems/base'
require 'rubycritic/analysers_runner'
require 'rubycritic/revision_comparator'
require 'rubycritic/reporter'
require 'rubycritic/commands/base'

module RubyCritic
  module Command
    class Default < Base
      def initialize(options)
        super
        @paths = options[:paths]
        Config.source_control_system = SourceControlSystem::Base.create
      end

      def execute
        report(critique)
        status_reporter
      end

      def critique
        analysed_modules = AnalysersRunner.new(paths).run
        RevisionComparator.new(paths).set_statuses(analysed_modules)
      end

      def report(analysed_modules)
        Reporter.generate_report(analysed_modules)
        status_reporter.score = analysed_modules.score
      end

      private

      attr_reader :paths, :status_reporter
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
rubycritic-3.5.2 lib/rubycritic/commands/default.rb
rubycritic-3.5.1 lib/rubycritic/commands/default.rb
rubycritic-3.5.0 lib/rubycritic/commands/default.rb
rubycritic-3.4.0 lib/rubycritic/commands/default.rb
rubycritic-3.3.0 lib/rubycritic/commands/default.rb
rubycritic-3.2.3 lib/rubycritic/commands/default.rb
rubycritic-3.2.2 lib/rubycritic/commands/default.rb
rubycritic-3.2.1 lib/rubycritic/commands/default.rb