Sha256: 46f91249bebf6ab565b65b06c03cf780ab81ee6a35c4c07f745e080ff1b1b5a7

Contents?: true

Size: 1.23 KB

Versions: 4

Compression:

Stored size: 1.23 KB

Contents

ENV["RAILS_ROOT"] ||= 'spec/internal'
require 'rspec/core/rake_task'


desc "Run specs"
RSpec::Core::RakeTask.new(:spec => [:generate, :fixtures]) do |t|
  # if ENV['COVERAGE'] and RUBY_VERSION =~ /^1.8/
  #   t.rcov = true
  #   t.rcov_opts = %w{--exclude spec\/*,gems\/*,ruby\/* --aggregate coverage.data}
  # end
  t.rspec_opts = "--colour"
end

task :fixtures do
  within_test_app do
    system "rake hydra:fixtures:refresh RAILS_ENV=test"
  end
end


describe "Create the test rails app"
task :generate do
  unless File.exists?('spec/internal/Rakefile')
    puts "Generating rails app"
    `rails new spec/internal`
    puts "Copying gemfile"
    `cp spec/support/Gemfile spec/internal`
    puts "Copying generator"
    `cp -r spec/support/lib/generators spec/internal/lib`
    within_test_app do
      puts "Bundle install"
      `bundle install`
      puts "running test_app_generator"
      system "rails generate test_app"

      puts "running migrations"
      puts `rake db:migrate db:test:prepare`
    end
  end
  puts "Running specs"
end

describe "Clean out the test rails app"
task :clean do
  puts "Removing sample rails app"
  `rm -rf spec/internal`
end

def within_test_app
  FileUtils.cd('spec/internal')
  yield
  FileUtils.cd('../..')
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hydra-core-5.0.0.pre4 tasks/rspec.rake
hydra-core-5.0.0.pre3 tasks/rspec.rake
hydra-core-5.0.0.pre2 tasks/rspec.rake
hydra-core-5.0.0.pre1 tasks/rspec.rake