Sha256: 2d5fba109a7d2873ec794a527bdcd3ba87f395852e9bf68c54c0d8a274cba7ba

Contents?: true

Size: 1.98 KB

Versions: 3

Compression:

Stored size: 1.98 KB

Contents

desc "Creates a test rails app for the specs to run against"
task :setup do
  require 'rails/version'
  system("mkdir spec/rails") unless File.exists?("spec/rails")
  system "bundle exec rails new spec/rails/rails-#{Rails::VERSION::STRING} -m spec/support/rails_template.rb"
end

# Run specs and cukes
desc "Run the full suite"
task :test => ['spec:unit', 'spec:integration', 'cucumber', 'cucumber:class_reloading']

namespace :test do

  desc "Run the full suite against the important versions of rails"
  task :major_supported_rails do
    current_version = detect_rails_version if File.exists?("Gemfile.lock")

    ["3.0.10", "3.1.0"].each do |version|
      puts
      puts "== Using Rails #{version}"

      if File.exists?("Gemfile.lock")
        puts "Removing the current Gemfile.lock"
        cmd "rm Gemfile.lock"
      end

      cmd "export RAILS=#{version} && ./script/use_rails #{version}"
      cmd "export RAILS=#{version} && bundle exec rspec spec/unit"
      cmd "export RAILS=#{version} && bundle exec rspec spec/integration"
      cmd "export RAILS=#{version} && bundle exec cucumber features"
      cmd "export RAILS=#{version} && bundle exec cucumber -p class-reloading features"
    end
    cmd "./script/use_rails #{current_version}" if current_version
  end

end

require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)

namespace :spec do

  desc "Run the unit specs"
  RSpec::Core::RakeTask.new(:unit) do |t|
    t.pattern = "spec/unit/**/*_spec.rb"
  end

  desc "Run the integration specs"
  RSpec::Core::RakeTask.new(:integration) do |t|
    t.pattern = "spec/integration/**/*_spec.rb"
  end

end


require 'cucumber/rake/task'

Cucumber::Rake::Task.new(:cucumber) do |t|
  t.profile = 'default'
end

namespace :cucumber do

  Cucumber::Rake::Task.new(:wip, "Run the cucumber scenarios with the @wip tag") do |t|
    t.profile = 'wip'
  end

  Cucumber::Rake::Task.new(:class_reloading, "Run the cucumber scenarios that test reloading") do |t|
    t.profile = 'class-reloading'
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
andrewroth_activeadmin-0.3.4.3 tasks/test.rake
andrewroth_activeadmin-0.3.4.2 tasks/test.rake
andrewroth_activeadmin-0.3.4.1 tasks/test.rake