2012-07-20 2 views
0

나는 보통 Rake 내 테스트 스위트를 실행guard-minitest로드 경로를 구성 하시겠습니까?

Rakefile을 :

require 'rake/testtask' 

namespace :spec do 
    desc "Run all specs" 
    task all: [:units] 

    desc "Run all unit specs" 
    Rake::TestTask.new :units do |t| 
    t.pattern = "spec/unit/**/*_spec.rb" 
    t.libs = ['app', 'spec'] 
    end 
end 

레이크 작업은 위의 훌륭하게 작동합니다. 지금은 guard-minitest 그것을 실행하려면 :

Guardfile :

guard 'minitest' do 
    watch(%r{^app/(.+)\.rb$}) { |m| "spec/app/#{m[1]}_spec.rb" } 
    watch(%r{^spec/(.+)\.rb$}) { |m| "spec/#{m[1]}.rb" } 
end 

그러나,이 일을하는 것은 내 부하 경로에 결과를 설정하지 :

/vagrant/spec/unit/helper.rb:5:in `require': cannot load such file -- repository (LoadError) 

을 ... 난 '때문에 내 파일을 요구하는 파일은 require './app/repository' 대신에 require 'repository'을 좋아합니다.

내 레이크 작업에서와 같이 내가 필요로하는로드 경로를 사용하도록 guard을 어떻게 구성 할 수 있습니까?

답변

1

당신은 바로 당신의 LOAD_PATHapp 디렉토리를 추가 할 수 있습니다 당신 같은 test/test_helper.rb (또는 spec/spec_helper.rb) :

$:.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', 'app'))) 

가드 minitest가 DRB를 통해 실행되는 경우에도, minitest하는 테스트 헬퍼를 추가합니다.

관련 문제