2009-05-27 11:21:20 -04:00
|
|
|
require 'rake'
|
|
|
|
require 'rake/testtask'
|
|
|
|
require 'rake/rdoctask'
|
|
|
|
|
2009-05-27 13:06:30 -04:00
|
|
|
begin
|
|
|
|
require 'jeweler'
|
|
|
|
Jeweler::Tasks.new do |gemspec|
|
|
|
|
gemspec.name = 'paper_trail'
|
|
|
|
gemspec.summary = "Track changes to your models' data. Good for auditing or versioning."
|
|
|
|
gemspec.email = 'boss@airbladesoftware.com'
|
|
|
|
gemspec.homepage = 'http://github.com/airblade/paper_trail'
|
|
|
|
gemspec.authors = ['Andy Stewart']
|
|
|
|
end
|
2009-11-23 12:00:07 -05:00
|
|
|
Jeweler::GemcutterTasks.new
|
2009-05-27 13:06:30 -04:00
|
|
|
rescue LoadError
|
2009-11-23 12:00:07 -05:00
|
|
|
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
2009-05-27 13:06:30 -04:00
|
|
|
end
|
2009-05-27 11:21:20 -04:00
|
|
|
|
|
|
|
desc 'Test the paper_trail plugin.'
|
|
|
|
Rake::TestTask.new(:test) do |t|
|
|
|
|
t.libs << 'lib'
|
|
|
|
t.libs << 'test'
|
|
|
|
t.pattern = 'test/**/*_test.rb'
|
|
|
|
t.verbose = true
|
|
|
|
end
|
|
|
|
|
2009-05-27 13:06:30 -04:00
|
|
|
begin
|
|
|
|
require 'rcov/rcovtask'
|
|
|
|
Rcov::RcovTask.new do |test|
|
|
|
|
test.libs << 'test'
|
|
|
|
test.pattern = 'test/**/*_test.rb'
|
|
|
|
test.verbose = true
|
|
|
|
end
|
|
|
|
rescue LoadError
|
|
|
|
task :rcov do
|
|
|
|
abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2009-05-27 11:21:20 -04:00
|
|
|
desc 'Generate documentation for the paper_trail plugin.'
|
|
|
|
Rake::RDocTask.new(:rdoc) do |rdoc|
|
|
|
|
rdoc.rdoc_dir = 'rdoc'
|
|
|
|
rdoc.title = 'PaperTrail'
|
|
|
|
rdoc.options << '--line-numbers' << '--inline-source'
|
|
|
|
rdoc.rdoc_files.include('README')
|
|
|
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
|
|
end
|
2009-05-27 11:41:40 -04:00
|
|
|
|
2009-05-27 13:06:30 -04:00
|
|
|
desc 'Default: run unit tests.'
|
|
|
|
task :default => :test
|