class Rcov::RcovTask
def define
def define lib_path = @libs.join(File::PATH_SEPARATOR) actual_name = Hash === name ? name.keys.first : name unless Rake.application.last_comment desc "Analyze code coverage with tests" + (@name==:rcov ? "" : " for #{actual_name}") end task @name do run_code = '' RakeFileUtils.verbose(@verbose) do run_code = case rcov_path when nil, '' "-S rcov" else %!"#{rcov_path}"! end ruby_opts = @ruby_opts.clone ruby_opts.push( "-I#{lib_path}" ) ruby_opts.push run_code ruby_opts.push( "-w" ) if @warning ruby ruby_opts.join(" ") + " " + option_list + %[ -o "#{@output_dir}" ] + file_list.collect { |fn| %["#{fn}"] }.join(' ') end end desc "Remove rcov products for #{actual_name}" task paste("clobber_", actual_name) do rm_r @output_dir rescue nil end clobber_task = paste("clobber_", actual_name) task :clobber => [clobber_task] task actual_name => clobber_task self end