2011-08-23 2 views
3

나는 청사진이 있습니다기계공 + RSpec에와 예약어는

Model.blueprint(:something) do 
    name "Some name" 
    context "some context" 
end 

"컨텍스트"모델의 속성은, 그러나 그것은 또한 RSpec에의 예약 된 단어입니다. 내가 만들려고 할 때 "context"라인에서 ArgumentError를 얻는다.

이 상황을 극복하는 방법에 대한 아이디어가 있으십니까?

답변

0

기계공 2.0.0.beta2로 복제 할 수 없습니다.

기계공은 method_missing?을 무시한 다음 해당 인수를 기반으로 속성을 할당하여 작동합니다. rspec이 Machinist 's Lathe의 객체에 context 메서드를 할당하면 method_missing? 전에 호출됩니다. 여전히이 문제가 발생하는 경우 평가 속성 전에 remove_method :context를 사용하여 시도 할 수 :

Model.blueprint(:something) do 
    remove_method :context 
    name "Some name" 
    context "some context" 
    alias_method :context, :describe 
end 

문제가 해결한다면 내가 로컬로 복제 할 수 없습니다로 내가 말할 수 없다,하지만 난 그것을 줄 것이다 샷.

관련 문제