lib/churn/churn_history.rb in churn-0.0.29 vs lib/churn/churn_history.rb in churn-0.0.30

- old
+ new

@@ -1,21 +1,21 @@ module Churn - # responcible for storing the churn history to json, + # responsible for storing the churn history to json, # and for loading old churn history data from json. class ChurnHistory - + #takes current revision and it's hash_data and stores it def self.store_revision_history(revision, hash_data) - FileUtils.mkdir 'tmp' unless File.directory?('tmp') - File.open("tmp/#{revision}.json", 'w') {|file| file.write(hash_data.to_json) } + FileUtils.mkdir_p tmp_churn_directory unless File.directory?(tmp_churn_directory) + File.open("#{tmp_churn_directory}/#{revision}.json", 'w') {|file| file.write(hash_data.to_json) } end - + #given a previous project revision find and load the churn data from a json file def self.load_revision_data(revision) #load revision data from scratch folder if it exists - filename = "tmp/#{revision}.json" + filename = "#{tmp_churn_directory}/#{revision}.json" if File.exists?(filename) begin json_data = File.read(filename) data = JSON.parse(json_data) changed_files = data['churn']['changed_files'] @@ -24,9 +24,13 @@ rescue JSON::ParserError #leave all of the objects nil end end [changed_files, changed_classes, changed_methods] + end + + def self.tmp_churn_directory + ChurnOptions.instance.data_directory end end end