class Quality::Rake::Task
A Rake
task that run quality tools on a set of source files, and enforce a ratcheting quality level.
Example:
require 'quality/rake/task' Quality::Rake::Task.new do |t| end
This will create a task that can be run with:
rake quality
Attributes
config[R]
globber[R]
Public Class Methods
new(dsl: ::Rake::Task, cmd_runner: Kernel, count_file: File, count_io: IO, gem_spec: Gem::Specification, quality_checker_class: Quality::QualityChecker, which: Which.new, config: Quality::Config.new) { |config| ... }
click to toggle source
Defines a new task, using the name name
.
# File lib/quality/rake/task.rb, line 44 def initialize(dsl: ::Rake::Task, cmd_runner: Kernel, count_file: File, count_io: IO, gem_spec: Gem::Specification, quality_checker_class: Quality::QualityChecker, which: Which.new, config: Quality::Config.new) @dsl = dsl @cmd_runner = cmd_runner @config = config yield @config if block_given? @runner = Quality::Runner.new(@config, gem_spec: gem_spec, quality_checker_class: quality_checker_class, count_io: count_io, count_file: count_file, globber: globber, which: which) define end
Private Instance Methods
define()
click to toggle source
# File lib/quality/rake/task.rb, line 80 def define unless ::Rake.application.last_description desc 'Verify quality has increased or stayed ' \ 'the same' end @dsl.define_task(quality_name) { @runner.run_quality } @dsl.define_task(ratchet_name) { @runner.run_ratchet } @runner.tools.each do |tool_name, tool_exe, clazz| @dsl.define_task(tool_name) do @runner.run_quality_with_tool(tool_name, tool_exe, clazz) end end end
quality_name()
click to toggle source
# File lib/quality/rake/task.rb, line 72 def quality_name config.quality_name end
ratchet_name()
click to toggle source
# File lib/quality/rake/task.rb, line 76 def ratchet_name config.ratchet_name end