lib/knapsack/report.rb in knapsack-0.0.3 vs lib/knapsack/report.rb in knapsack-0.1.0

- old
+ new

@@ -1,20 +1,35 @@ module Knapsack class Report - REPORT_PATH = 'knapsack_report.json' + include Singleton - class << self - def save - File.open(REPORT_PATH, 'w+') do |f| - f.write(Presenter.report_json) - end - end + def config(opts={}) + @config ||= default_config + @config.merge!(opts) + end - def open - report = File.read(REPORT_PATH) - JSON.parse(report) - rescue Errno::ENOENT - raise "Knapsack report file doesn't exist. Please generate report first!" + def save + File.open(config[:report_path], 'w+') do |f| + f.write(report_json) end + end + + def open + report = File.read(config[:report_path]) + JSON.parse(report) + rescue Errno::ENOENT + raise "Knapsack report file doesn't exist. Please generate report first!" + end + + private + + def default_config + { + report_path: 'knapsack_report.json' + } + end + + def report_json + Presenter.report_json end end end