36 lines
766 B
Ruby

require 'rake'
require 'rake/testtask'
TEST_DIRECTORY = File.dirname(File.expand_path(__FILE__))
TEST_FILES = Dir["#{TEST_DIRECTORY}/test_*.rb"]
GEM_DEPS = {
"mocha" => "~> 1.1",
"minitest" => "~> 5.3",
"rake" => "~> 10.3",
}
task :default => :test
task :deps do
GEM_DEPS.each do |dep, version|
`gem list --installed #{dep} -v '#{version}'`
next if $?.success?
sh "gem", "install", "--no-ri", "--no-rdoc", "--user-install", dep, "-v", version
end
end
Rake::TestTask.new(:test) do |t|
t.libs << TEST_DIRECTORY
t.test_files = TEST_FILES
end
namespace :test do
TEST_FILES.each do |file|
name = file[/test_(.+)\.rb/, 1]
Rake::TestTask.new(name) do |t|
t.libs << TEST_DIRECTORY
t.test_files = [file]
end
end
end