2010-03-16 5 views
1

레일즈 용 플러그인에서 ActiveRecord의 파인더에 제한된 메모리 캐싱을 추가하려고합니다. 기능 자체는 충분히 성숙했지만, 나에게 인생의 단위 테스트가 플러그인과 함께 작동하도록 할 수는 없다.레일 플러그인에 대한 테스트 작성하기

저는 이제 몇 가지 기본 테스트를 통해 공급 업체/플러그인/my_plugin/test/my_plugin_test.rb ActiveSupport :: TestCase의 표준 하위 클래스를 사용하고 있습니다. 나는 플러그인 디렉토리에서 'rake test'를 실행하려고 시도하고,이 태스크가 테스트 케이스와 함께 루비 파일을로드한다는 것을 확인했지만 실제로 테스트를 실행하지는 않는다.

나는 레일 플러그인 가이드 ( http://guides.rubyonrails.org/plugins.html)을 적용 이어, 그러나 끔찍하게 오래된 것 같다

내가 얻을 수있는 유일한 출력이있다 (지금 레일 것을 제안 등을 자동으로 수행) :

이것은 확실히 적어도 일부 출력 및 유일한 테스트를 생산한다

require 'test_helper' 
require 'active_record' 

class IngeniousRecordTest < ActiveSupport::TestCase 
    test "example" do 
    assert false 
    end 
end 

:

Kakadu:ingenious_record adam$ rake test 
(in /Users/adam/Sites/1_PRK/vendor/plugins/ingenious_record) 
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -Ilib:lib:test "/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb" "test/ingenious_record_test.rb" 

간단한 테스트 케이스는 다음과 같습니다 해당 파일은 실패한 어설 션을 생성해야합니다.

레일스에서 ​​테스트를 실행하기 위해 할 수있는 아이디어가 있습니까?

답변

3

레일즈 2.2.3에는 플러그인에 'test/unit'패키지/파일이 포함되어 있지 않으므로 분명히 약간의 문제가 있습니다. 는 플러그인의 문제를 해결하기 위해, 당신의 test_helper.rb 파일의 맨 위에 다음을 추가 lighthouse에서 티켓으로 발견

require 'test/unit' 

.

5

나는 엔진 플러그인의 레이크 작업을 사용하여 내 플러그인을 테스트 :

rake test:plugins:all PLUGIN=myplugin 

난 당신이 엔진없이 그것을 할 수 있습니다 확신하지만 옵션입니다. 최근 버전의 레일즈 (2.2.2 버전)에는 엔진 지원 기능이 통합되어 있습니다.

+0

이렇게하는 것이 유익합니까? – Droj

관련 문제