Rakefile in dragonfly-0.6.2 vs Rakefile in dragonfly-0.7.0

- old
+ new

@@ -2,26 +2,17 @@ begin require 'jeweler' Jeweler::Tasks.new do |s| s.name = "dragonfly" - s.summary = %Q{Dragonfly is an on-the-fly Rack processing/encoding framework. - It includes an extension for Ruby on Rails for easy image handling} + s.summary = %Q{Dragonfly is an on-the-fly Rack-based image handling framework. + It is suitable for use with Rails, Sinatra and other web frameworks. Although it's mainly used for images, + it can handle any content type.} s.email = "mark@new-bamboo.co.uk" s.homepage = "http://github.com/markevans/dragonfly" s.authors = ["Mark Evans"] s.add_dependency('rack') - s.add_development_dependency 'jeweler' - s.add_development_dependency 'yard' - s.add_development_dependency 'rmagick' - s.add_development_dependency 'aws-s3' - s.add_development_dependency 'rspec' - s.add_development_dependency 'cucumber' - s.add_development_dependency 'cucumber-rails' - s.add_development_dependency 'activerecord' - s.add_development_dependency 'sqlite3-ruby' - s.add_development_dependency 'ginger' end Jeweler::GemcutterTasks.new rescue LoadError puts "Jeweler not available. Install it with: (sudo) gem install jeweler" end @@ -47,44 +38,41 @@ end rescue LoadError puts "YARD is not available. To run the documentation tasks, install it with: (sudo) gem install yard" end -begin - require 'spec/rake/spectask' - Spec::Rake::SpecTask.new(:spec) do |t| - t.libs << 'lib' << 'spec' - t.spec_files = FileList['spec/**/*_spec.rb'] - end +desc "Run all the specs" +task :spec do + system "bundle exec spec -O .specopts spec/dragonfly" +end - Spec::Rake::SpecTask.new(:rcov) do |t| - t.libs << 'lib' << 'spec' - t.spec_files = FileList['spec/**/*_spec.rb'] - t.rcov = true - end -rescue LoadError - puts "RSpec is not available. To run tests, install it with: (sudo) gem install rspec" +desc "Run the active model specs" +task :model_spec do + system "bundle exec spec -O .specopts spec/dragonfly/active_model_extensions" end -begin - require 'cucumber/rake/task' - Cucumber::Rake::Task.new(:features) -rescue LoadError - puts "Cucumber is not available. To run features, install it with: (sudo) gem install cucumber" +desc "Run the active_record specs (AR 2.3)" +task :model_spec_235 do + system "export BUNDLE_GEMFILE=Gemfile.rails.2.3.5 && bundle exec spec -O .specopts spec/dragonfly/active_model_extensions" end -begin - require 'ginger' -rescue LoadError - puts "To run 'rake', to test everything, you need the Ginger gem. Install it with: (sudo) gem install ginger" +task :features do + system "bundle exec cucumber" end + task :default do - system 'ginger spec && rake features' + # Do everything!!! + puts "*** Running all the specs using the default Gemfile ***" + Rake::Task['spec'].invoke + puts "*** Running the model specs with Gemfile.rails.2.3.5 ***" + Rake::Task['model_spec_235'].invoke + puts "*** Running the features ***" + Rake::Task['features'].invoke end desc 'Set up a Rails app ready for testing' namespace :rails do - + task :setup do version = ENV['RAILS_VERSION'] raise "Please give a RAILS_VERSION, e.g. RAILS_VERSION=2.3.5" unless version path = File.expand_path("fixtures/rails_#{version}") app_name = 'tmp_app'