class MutatorRails::FullMutate
Attributes
guide[R]
Public Class Methods
new(*)
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 10 def initialize(*) excluded_files @guide = Guide.new end
Public Instance Methods
call()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 15 def call process(all_files) end
changed()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 27 def changed process(all_files - unprocessed_files - j1_files) end
j1()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 23 def j1 process(j1_files) end
unprocessed()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 19 def unprocessed process(unprocessed_files) end
Private Instance Methods
all_files()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 55 def all_files Dir.glob(APP_BASE + '**/*.rb') end
exclude?(file)
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 70 def exclude?(file) excluded_files.include?(file) end
excluded_files()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 59 def excluded_files @exclusions ||= load_exclusions end
j1_files()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 40 def j1_files all_files.select do |file| sm = SingleMutate.new(guide, file) !exclude?(file) && sm.need_j1? end end
load_exclusions()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 63 def load_exclusions MutatorRails::Config.configuration .exclusions .compact .flat_map { |exclusion| Dir.glob(exclusion) } end
process(files)
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 47 def process(files) files.sort_by { |x| File.size(x) }.each do |file| next if exclude?(file) SingleMutate.new(guide, file).call end end
unprocessed_files()
click to toggle source
# File lib/mutator_rails/full_mutate.rb, line 33 def unprocessed_files all_files.select do |file| sm = SingleMutate.new(guide, file) !exclude?(file) && !guide.log_exists?(sm.log) end end