2011-12-02 13:42:46 +00:00
|
|
|
require 'rake/clean'
|
|
|
|
|
|
|
|
CLOBBER.include('coverage', 'specdoc')
|
2010-07-28 19:30:56 +00:00
|
|
|
|
|
|
|
namespace :spec do
|
2012-06-14 09:18:35 +00:00
|
|
|
RSpec::Core::RakeTask.new(:all) do |t|
|
|
|
|
end
|
|
|
|
|
|
|
|
desc 'Generate HTML Specdocs for all specs.'
|
|
|
|
RSpec::Core::RakeTask.new(:specdoc) do |t|
|
|
|
|
specdoc_path = File.expand_path('../../specdoc', __FILE__)
|
|
|
|
|
|
|
|
t.rspec_opts = %W( --format html --out #{File.join(specdoc_path, 'index.html')} )
|
|
|
|
t.fail_on_error = false
|
|
|
|
end
|
|
|
|
|
|
|
|
RSpec::Core::RakeTask.new(:rcov) do |t|
|
2010-07-28 19:30:56 +00:00
|
|
|
if RCOV_ENABLED
|
2010-08-17 22:09:41 +00:00
|
|
|
if `which rcov`.strip == ""
|
2010-10-13 21:16:07 +00:00
|
|
|
STDERR.puts(
|
2012-06-14 09:18:35 +00:00
|
|
|
"Please install rcov and ensure that its binary is in the PATH:"
|
2010-10-13 21:16:07 +00:00
|
|
|
)
|
2010-10-22 23:11:59 +00:00
|
|
|
STDERR.puts("sudo gem install rcov")
|
2010-08-17 22:09:41 +00:00
|
|
|
exit(1)
|
|
|
|
end
|
2010-07-28 19:30:56 +00:00
|
|
|
t.rcov = true
|
|
|
|
else
|
|
|
|
t.rcov = false
|
|
|
|
end
|
2012-06-14 09:18:35 +00:00
|
|
|
t.rcov_opts = %w(
|
|
|
|
--exclude lib/google/api_client/environment.rb,
|
|
|
|
lib/compat,
|
|
|
|
spec,
|
|
|
|
.rvm/gems,
|
|
|
|
1.8/gems,
|
|
|
|
1.9/gems,
|
|
|
|
.rvm,
|
|
|
|
/Library/Ruby
|
2010-08-12 01:07:35 +00:00
|
|
|
)
|
2010-07-28 19:30:56 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
if RCOV_ENABLED
|
|
|
|
RCov::VerifyTask.new(:verify) do |t|
|
2012-05-11 10:41:40 +00:00
|
|
|
t.threshold = 65.0
|
2010-07-28 19:30:56 +00:00
|
|
|
t.index_html = 'coverage/index.html'
|
|
|
|
end
|
|
|
|
|
|
|
|
task :verify => :rcov
|
|
|
|
end
|
|
|
|
|
|
|
|
namespace :rcov do
|
2010-08-17 01:21:17 +00:00
|
|
|
desc 'Browse the code coverage report.'
|
|
|
|
task :browse => 'spec:rcov' do
|
|
|
|
require 'launchy'
|
|
|
|
Launchy::Browser.run('coverage/index.html')
|
2010-07-28 19:30:56 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
if RCOV_ENABLED
|
2012-05-11 10:44:39 +00:00
|
|
|
desc 'Alias to spec:rcov'
|
|
|
|
task 'spec' => 'spec:rcov'
|
2010-07-28 19:30:56 +00:00
|
|
|
else
|
2010-08-17 01:21:17 +00:00
|
|
|
desc 'Alias to spec:all'
|
|
|
|
task 'spec' => 'spec:all'
|
2010-07-28 19:30:56 +00:00
|
|
|
end
|