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