Don't load test related tasks in other env

This commit is contained in:
Priit Tark 2015-01-20 10:25:08 +02:00
parent b527221baf
commit b3c0b5d824

View file

@ -1,43 +1,45 @@
begin begin
require 'rspec/core/rake_task' if Rails.env.test? || Rails.env.development?
require 'open3' require 'rspec/core/rake_task'
require 'open3'
desc 'Run all specs against server' desc 'Run all specs against server'
task 'test' do task 'test' do
test_against_server { Rake::Task['spec'].invoke } test_against_server { Rake::Task['spec'].invoke }
end end
desc 'Run EPP specs against server' desc 'Run EPP specs against server'
task 'test:epp' do task 'test:epp' do
test_against_server { Rake::Task['spec:epp'].invoke } test_against_server { Rake::Task['spec:epp'].invoke }
end end
desc 'Run all but EPP specs' desc 'Run all but EPP specs'
RSpec::Core::RakeTask.new('test:other') do |t| RSpec::Core::RakeTask.new('test:other') do |t|
t.rspec_opts = '--tag ~epp' t.rspec_opts = '--tag ~epp'
end end
desc 'Run all but EPP specs' desc 'Run all but EPP specs'
RSpec::Core::RakeTask.new('test:all_but_features') do |t| RSpec::Core::RakeTask.new('test:all_but_features') do |t|
t.rspec_opts = '--tag ~feature' t.rspec_opts = '--tag ~feature'
end end
desc 'Generate EPP doc from specs' desc 'Generate EPP doc from specs'
RSpec::Core::RakeTask.new('test:epp_doc') do |t| RSpec::Core::RakeTask.new('test:epp_doc') do |t|
ENV['EPP_DOC'] = 'true' ENV['EPP_DOC'] = 'true'
t.rspec_opts = '--tag epp --require support/epp_doc.rb --format EppDoc' t.rspec_opts = '--tag epp --require support/epp_doc.rb --format EppDoc'
end end
Rake::Task[:default].prerequisites.clear Rake::Task[:default].prerequisites.clear
task default: :test task default: :test
def test_against_server def test_against_server
_stdin, _stdout, _stderr, wait_thr = Open3.popen3('unicorn -E test -p 8989') _stdin, _stdout, _stderr, wait_thr = Open3.popen3('unicorn -E test -p 8989')
pid = wait_thr.pid pid = wait_thr.pid
begin begin
yield yield
ensure ensure
`kill #{pid}` `kill #{pid}`
end
end end
end end
rescue LoadError => e rescue LoadError => e