lib/metric_fu.rb in edouard-metric_fu-1.1.1 vs lib/metric_fu.rb in edouard-metric_fu-1.2.0

- old
+ new

@@ -1,24 +1,31 @@ +require 'rake' +require 'yaml' # Load a few things to make our lives easier elsewhere. module MetricFu LIB_ROOT = File.dirname(__FILE__) end base_dir = File.join(MetricFu::LIB_ROOT, 'base') -generator_dir = File.join(MetricFu::LIB_ROOT, 'generators') -template_dir = File.join(MetricFu::LIB_ROOT, 'templates') -graph_dir = File.join(MetricFu::LIB_ROOT, 'graphs') +generator_dir = File.join(MetricFu::LIB_ROOT, 'generators') +template_dir = File.join(MetricFu::LIB_ROOT, 'templates') +graph_dir = File.join(MetricFu::LIB_ROOT, 'graphs') # We need to require these two things first because our other classes # depend on them. require File.join(base_dir, 'report') require File.join(base_dir, 'generator') require File.join(base_dir, 'graph') -# Load the rakefile so users of the gem get the default metric_fu task -load File.join(MetricFu::LIB_ROOT, '..', 'tasks', 'metric_fu.rake') +# prevent the task from being run multiple times. +unless Rake::Task.task_defined? "metrics:all" + # Load the rakefile so users of the gem get the default metric_fu task + load File.join(MetricFu::LIB_ROOT, '..', 'tasks', 'metric_fu.rake') +end # Now load everything else that's in the directory Dir[File.join(base_dir, '*.rb')].each{|l| require l } Dir[File.join(generator_dir, '*.rb')].each {|l| require l } Dir[File.join(template_dir, 'standard/*.rb')].each {|l| require l} Dir[File.join(template_dir, 'awesome/*.rb')].each {|l| require l} -Dir[File.join(graph_dir, '*.rb')].each {|l| require l} +require graph_dir + "/grapher" +Dir[File.join(graph_dir, '*.rb')].each {|l| require l} +Dir[File.join(graph_dir, 'engines', '*.rb')].each {|l| require l} \ No newline at end of file