class MutatorRails::Guide
Constants
- SEP
Attributes
guides[R]
Public Class Methods
new(*)
click to toggle source
# File lib/mutator_rails/guide.rb, line 10 def initialize(*) preset_file end
Public Instance Methods
current?(log, code_md5, spec_md5)
click to toggle source
# File lib/mutator_rails/guide.rb, line 14 def current?(log, code_md5, spec_md5) # p guides[log] File.exist?(log) && File.size(log).positive? && log_exists?(log) && guides[log].eql?([code_md5, spec_md5, MUTANT_VERSION]) end
log_exists?(log)
click to toggle source
# File lib/mutator_rails/guide.rb, line 27 def log_exists?(log) guides[log].present? end
remove(log)
click to toggle source
# File lib/mutator_rails/guide.rb, line 31 def remove(log) guides.delete(log) recreate end
update(log, code_md5, spec_md5)
click to toggle source
# File lib/mutator_rails/guide.rb, line 22 def update(log, code_md5, spec_md5) guides[log] = [code_md5, spec_md5, MUTANT_VERSION] recreate end
Private Instance Methods
create_guide_file()
click to toggle source
# File lib/mutator_rails/guide.rb, line 60 def create_guide_file puts ".. creating guide file #{guide_file_name}" File.open(guide_file_name, "w+") end
guide_file_name()
click to toggle source
# File lib/mutator_rails/guide.rb, line 65 def guide_file_name Pathname(Dir.pwd).join(MutatorRails::Config.configuration.guide_file).tap do |p| FileUtils.mkdir_p(p.dirname) end end
load()
click to toggle source
# File lib/mutator_rails/guide.rb, line 44 def load @guides = {} File.readlines(guide_file_name).each do |line| log, code_md5, spec_md5, mutant_version = line.strip.split(SEP) guides[log] = [code_md5, spec_md5, mutant_version] end end
preset_file()
click to toggle source
# File lib/mutator_rails/guide.rb, line 38 def preset_file create_guide_file unless File.exist?(guide_file_name) load end
recreate()
click to toggle source
# File lib/mutator_rails/guide.rb, line 52 def recreate f = File.open(guide_file_name, 'w') guides.sort.each do |k, v| f.puts ("#{k}#{SEP}#{v.join(SEP)}") if k.present? end f.close end