57 lines
1.5 KiB
Ruby
57 lines
1.5 KiB
Ruby
|
# encoding: utf-8
|
||
|
require 'bundler/setup'
|
||
|
require 'appraisal'
|
||
|
require 'rdoc/task'
|
||
|
require 'rspec/core/rake_task'
|
||
|
require 'tasks/verify_rcov'
|
||
|
|
||
|
Bundler::GemHelper.install_tasks
|
||
|
|
||
|
desc 'Default: run unit specs.'
|
||
|
task :default => :all
|
||
|
|
||
|
desc 'Test formtastic with all supported Rails versions.'
|
||
|
task :all => ["appraisal:install"] do
|
||
|
exec('rake appraisal spec')
|
||
|
end
|
||
|
|
||
|
desc 'Generate documentation for the formtastic plugin.'
|
||
|
Rake::RDocTask.new(:rdoc) do |rdoc|
|
||
|
rdoc.rdoc_dir = 'rdoc'
|
||
|
rdoc.title = 'Formtastic'
|
||
|
rdoc.options << '--line-numbers' << '--inline-source'
|
||
|
rdoc.rdoc_files.include('README.textile')
|
||
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
||
|
end
|
||
|
|
||
|
desc 'Test the formtastic plugin.'
|
||
|
RSpec::Core::RakeTask.new('spec') do |t|
|
||
|
t.pattern = FileList['spec/**/*_spec.rb']
|
||
|
end
|
||
|
|
||
|
desc 'Test the formtastic inputs.'
|
||
|
RSpec::Core::RakeTask.new('spec:inputs') do |t|
|
||
|
t.pattern = FileList['spec/inputs/*_spec.rb']
|
||
|
end
|
||
|
|
||
|
desc 'Test the formtastic plugin with specdoc formatting and colors'
|
||
|
RSpec::Core::RakeTask.new('specdoc') do |t|
|
||
|
t.pattern = FileList['spec/**/*_spec.rb']
|
||
|
end
|
||
|
|
||
|
desc 'Run all examples with RCov'
|
||
|
RSpec::Core::RakeTask.new('rcov') do |t|
|
||
|
t.pattern = FileList['spec/**/*_spec.rb']
|
||
|
t.rcov = true
|
||
|
t.rcov_opts = %w(--exclude gems/*,spec/*,.bundle/*, --aggregate coverage.data)
|
||
|
end
|
||
|
|
||
|
RCov::VerifyTask.new(:verify_coverage) do |t|
|
||
|
t.require_exact_threshold = false
|
||
|
t.threshold = (RUBY_VERSION == "1.8.7" ? 95 : 0)
|
||
|
end
|
||
|
|
||
|
desc "Run all examples and verify coverage"
|
||
|
task :spec_and_verify_coverage => [:rcov, :verify_coverage] do
|
||
|
end
|