Sha256: ce2216e9df7269f513cbca1e5d78e6d558651609894c21a54a6e157eb132b650

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

module Warder
  # responsible for executing warder tools
  class CLI
    def initialize(options)
      @options = options
    end

    def perform
      exit perform_style_guide_validation +
             perform_magick_numbers_validation +
             perform_code_duplications_validation +
             perform_code_smells_validation
    end

    private

    def perform_style_guide_validation
      if @options[:style_guide]
        runner = StyleGuideRunner.new(@options)
        runner.perform
      else
        0
      end
    end

    def perform_magick_numbers_validation
      if @options[:magick_numbers]
        runner = MagickNumbersRunner.new(@options)
        runner.perform
      else
        0
      end
    end

    def perform_code_duplications_validation
      if @options[:code_duplications]
        runner = CodeDuplicationsRunner.new(@options)
        runner.perform
      else
        0
      end
    end

    def perform_code_smells_validation
      if @options[:code_smells]
        runner = CodeSmellsRunner.new(@options)
        runner.perform
      else
        0
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
warder-0.0.5 lib/warder/cli.rb