def set_options(options = {})
@data_directory = options.fetch(:data_directory){ @data_directory } unless options[:data_directory]==''
@minimum_churn_count = options.fetch(:minimum_churn_count){ @minimum_churn_count }.to_i
@ignores = (options.fetch(:ignores){ @ignores }).to_s.split(',').map(&:strip)
@ignores << '/dev/null' unless @ignores.include?('/dev/null')
@start_date = options[:start_date] if !options[:start_date].nil? && options[:start_date]!=''
@history = options[:history] if !options[:history].nil? && options[:history]!=''
if @history=='true'
@history = DEFAULT_START_TIME
end
if !options[:report].nil? && options[:report]!=''
@report_host = options[:report]
if @report_host=='true'
@report_host = DEFAULT_REPORT_HOST
end
end
@name = options[:name] if !options[:name].nil? && options[:name]!=''
if !@report_host.nil? && @name.nil?
raise ArgumentError.new "If you are reporting churn results you must pass a valid github project name in the form of username/project_name"
end
self
end