Sha256: 18a8d2f892ccde8731f199827554f89c7a8ec5c391ec160772fe6d9ad68b42de
Contents?: true
Size: 1.98 KB
Versions: 1
Compression:
Stored size: 1.98 KB
Contents
require 'erb' module PrivatePlease ; module Report class Reporter TEMPLATE_PATH = File.expand_path(File.dirname(__FILE__) + '/templates/simple.txt.erb') attr_reader :candidates_store, :calls_store, :good_candidates, :bad_candidates, :good_candidates_c, :bad_candidates_c, :never_called_candidates, :never_called_candidates_c, :building_time def initialize(candidates_store, calls_store) @candidates_store = candidates_store @calls_store = calls_store prepare_report_data end def to_s erb = ERB.new(File.read(TEMPLATE_PATH), 0, "%<>") erb.result(binding) end private def prepare_report_data start_time = Time.now @bad_candidates = calls_store.external_calls .clone @bad_candidates_c = calls_store.class_external_calls.clone # TODO : optimize @good_candidates = calls_store.internal_calls .clone.remove(@bad_candidates) @good_candidates_c= calls_store.class_internal_calls.clone.remove(@bad_candidates_c) @never_called_candidates = candidates_store.instance_methods.clone. remove(@good_candidates). remove(@bad_candidates ) @never_called_candidates_c = candidates_store.class_methods.clone. remove(@good_candidates_c). remove(@bad_candidates_c ) @building_time = Time.now - start_time @candidates_classes_names = (candidates_store.instance_methods.classes_names + candidates_store.class_methods .classes_names ).uniq.sort @good_candidates_classes_names = (@good_candidates_c.classes_names + @good_candidates.classes_names).uniq.sort @bad_candidates_classes_names = (@bad_candidates_c .classes_names + @bad_candidates .classes_names).uniq.sort @never_called_candidates_classes_names = (@never_called_candidates_c .classes_names + @never_called_candidates.classes_names).uniq.sort end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
private_please-0.0.3 | lib/private_please/report/reporter.rb |