diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-03 22:27:16 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-03 22:27:16 +0200 |
commit | 2ee48c4f18470e733f244c659221e243ff998416 (patch) | |
tree | 62949886912b3dc5eb9e000b211e7f45f17ed978 /tasks/test.rake | |
download | edoors-ruby-2ee48c4f18470e733f244c659221e243ff998416.zip edoors-ruby-2ee48c4f18470e733f244c659221e243ff998416.tar.gz |
initial commit
Diffstat (limited to 'tasks/test.rake')
-rw-r--r-- | tasks/test.rake | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tasks/test.rake b/tasks/test.rake new file mode 100644 index 0000000..8257613 --- /dev/null +++ b/tasks/test.rake @@ -0,0 +1,41 @@ +# -*- coding: UTF-8 -*- +# +if test(?e, PROJ.test.file) or not PROJ.test.files.to_a.empty? +require 'rake/testtask' + +namespace :test do + + Rake::TestTask.new(:run) do |t| + t.libs = PROJ.libs + t.test_files = if test(?f, PROJ.test.file) then [PROJ.test.file] + else PROJ.test.files end + t.ruby_opts += PROJ.ruby_opts + t.ruby_opts += PROJ.test.opts + end + + if HAVE_RCOV + desc 'Run rcov on the unit tests' + task :rcov => :clobber_rcov do + opts = PROJ.rcov.opts.dup << '-o' << PROJ.rcov.dir + opts = opts.join(' ') + files = if test(?f, PROJ.test.file) then [PROJ.test.file] + else PROJ.test.files end + files = files.join(' ') + sh "#{RCOV} #{files} #{opts}" + end + + task :clobber_rcov do + rm_r 'coverage' rescue nil + end + end + +end # namespace :test + +desc 'Alias to test:run' +task :test => 'test:run' + +task :clobber => 'test:clobber_rcov' if HAVE_RCOV + +end + +# EOF |