require 'rake' require 'rake/testtask' require 'rake/rdoctask' require 'spec/rake/spectask' desc 'Default: run unit tests.' task :default => [:clean_db, :test] desc 'Remove the stale db file' task :clean_db do `rm -f #{File.dirname(__FILE__)}/test/state_machine.sqlite.db` end desc 'Test the acts as state machine plugin.' Rake::TestTask.new(:test) do |t| t.libs << 'lib' t.pattern = 'test/**/*_test.rb' t.verbose = true end desc 'Generate documentation for the acts as state machine plugin.' Rake::RDocTask.new(:rdoc) do |rdoc| rdoc.rdoc_dir = 'rdoc' rdoc.title = 'Acts As State Machine' rdoc.options << '--line-numbers --inline-source' rdoc.rdoc_files.include('README') rdoc.rdoc_files.include('TODO') rdoc.rdoc_files.include('lib/**/*.rb') end desc "Run all examples with RCov" Spec::Rake::SpecTask.new('cruise') do |t| t.spec_files = FileList['spec/*.rb'] t.rcov = true t.rcov_opts = ['--exclude', 'spec'] end desc "Run all examples" Spec::Rake::SpecTask.new('spec') do |t| t.spec_files = FileList['spec/*.rb'] t.rcov = false t.spec_opts = ['-cfs'] end task :default => [:spec]