diff options
-rw-r--r-- | Rakefile | 71 |
1 files changed, 40 insertions, 31 deletions
@@ -1,9 +1,13 @@ require "rubygems" -require "spec/rake/spectask" begin require 'jeweler' - +rescue LoadError + desc "Install gem using sudo" + task(:install) do + $stderr.puts "Jeweler not available. `gem install jeweler` to install this gem" + end +else Jeweler::Tasks.new do |s| s.name = "arel" s.authors = ["Bryan Helmkamp", "Nick Kallen"] @@ -16,42 +20,47 @@ begin end Jeweler::RubyforgeTasks.new -rescue LoadError - puts "Jeweler not available. Install it with: gem install jeweler" end -desc "Run specs using RCov (uses mysql database adapter)" -Spec::Rake::SpecTask.new(:coverage) do |t| - t.spec_files = - ["spec/connections/mysql_connection.rb"] + - FileList['spec/**/*_spec.rb'] - - t.rcov = true - t.rcov_opts << '--exclude' << "spec,gems" - t.rcov_opts << '--text-summary' - t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse' - t.rcov_opts << '--only-uncovered' -end +begin + require "spec/rake/spectask" +rescue LoadError + desc "Run specs" + task(:spec) { $stderr.puts '`gem install rspec` to run specs' } +else + desc "Run specs using RCov (uses mysql database adapter)" + Spec::Rake::SpecTask.new(:coverage) do |t| + t.spec_files = + ["spec/connections/mysql_connection.rb"] + + FileList['spec/**/*_spec.rb'] + + t.rcov = true + t.rcov_opts << '--exclude' << "spec,gems" + t.rcov_opts << '--text-summary' + t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse' + t.rcov_opts << '--only-uncovered' + end -namespace :spec do - for adapter in %w[mysql sqlite3 postgresql] - desc "Run specs with the #{adapter} database adapter" - Spec::Rake::SpecTask.new(adapter) do |t| - t.libs << "#{File.dirname(__FILE__)}/vendor/rails/activerecord/lib" - t.libs << "#{File.dirname(__FILE__)}/spec" - t.spec_files = - ["spec/connections/#{adapter}_connection.rb"] + - ["spec/schemas/#{adapter}_schema.rb"] + - FileList['spec/**/*_spec.rb'] + namespace :spec do + for adapter in %w[mysql sqlite3 postgresql] + desc "Run specs with the #{adapter} database adapter" + Spec::Rake::SpecTask.new(adapter) do |t| + t.libs << "#{File.dirname(__FILE__)}/vendor/rails/activerecord/lib" + t.libs << "#{File.dirname(__FILE__)}/spec" + t.spec_files = + ["spec/connections/#{adapter}_connection.rb"] + + ["spec/schemas/#{adapter}_schema.rb"] + + FileList['spec/**/*_spec.rb'] + end end end -end -desc "Run specs with mysql and sqlite3 database adapters (default)" -task :spec => ["check_dependencies", "spec:sqlite3", "spec:mysql", "spec:postgresql"] + desc "Run specs with mysql and sqlite3 database adapters (default)" + task :spec => ["check_dependencies", "spec:sqlite3", "spec:mysql", "spec:postgresql"] -desc "Default task is to run specs" -task :default => :spec + desc "Default task is to run specs" + task :default => :spec +end desc 'Removes trailing whitespace' task :whitespace do |