require 'rake/testtask'

namespace :test do
  Rake::TestTask.new(:unit) do |t|
    t.libs << "src"
    t.pattern = "test/*_test.rb"
  end

  namespace :unit do
    desc "Run the unit tests coverage analysis using \"rcov\""
    task :rcov do
      sh "rcov -Isrc -x 'test/.*_test\.rb' " +
        FileList["test/*_test.rb"].to_s
    end

    desc "Clean the directory with results of the unit tests coverage analysis"
    task "rcov_clean" do
      rm_rf "coverage"
    end
  end
end

task :default  => "test:unit"
