require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
gem "spicycode-micronaut", ">= 0.2.4"
require 'micronaut'
require 'micronaut/rake_task'
begin
require 'jeweler'
files = ["CHANGELOG", "MIT-LICENSE", "Rakefile", "README.rdoc", "VERSION.yml"]
files << Dir["examples/**/*", "laf/**/*", "lib/**/*", "tasks/**/*", "template/**/*"]
Jeweler::Tasks.new do |s|
s.name = "tarantula"
s.summary = "A big hairy fuzzy spider that crawls your site, wreaking havoc"
s.description = "A big hairy fuzzy spider that crawls your site, wreaking havoc"
s.homepage = "http://github.com/relevance/tarantula"
s.email = "opensource@thinkrelevance.com"
s.authors = ["Relevance, Inc."]
s.require_paths = ["lib"]
s.files = files.flatten
s.add_dependency 'htmlentities'
s.add_dependency 'hpricot'
s.rubyforge_project = 'thinkrelevance'
end
rescue LoadError
puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
end
desc 'Generate documentation for the tarantula plugin.'
Rake::RDocTask.new(:rdoc) do |rdoc|
rdoc.rdoc_dir = 'rdoc'
rdoc.title = 'Tarantula'
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.rdoc_files.include('README.rdoc')
rdoc.rdoc_files.include('lib/**/*.rb')
end
desc "Run all micronaut examples"
Micronaut::RakeTask.new :examples do |t|
t.pattern = "examples/**/*_example.rb"
end
namespace :examples do
desc "Run all micronaut examples using rcov"
Micronaut::RakeTask.new :coverage do |t|
t.pattern = "examples/**/*_example.rb"
t.rcov = true
t.rcov_opts = %[--exclude "gems/*,/Library/Ruby/*,config/*" --text-summary --sort coverage --no-validator-links]
end
RAILS_VERSIONS = %w[2.0.2 2.1.0 2.1.1 2.2.2 2.3.1 2.3.2]
desc "Run exmaples with multiple versions of rails"
task :multi_rails do
RAILS_VERSIONS.each do |rails_version|
puts
sh "RAILS_VERSION='#{rails_version}' rake examples"
end
end
end
if ENV["RUN_CODE_RUN"]
task :default => "examples:multi_rails"
else
task :default => "examples"
end