2012-09-04 6 views
2

rspec 테스트를 작성 중이며 어떤 이유로 든 any_instance 메소드가 정의되지 않았다고합니다. 내 컨트롤러 rspec 파일 중 하나에서 매우 비슷한 기대치를 가지고 있기 때문에 나는 아주 놀랐다. 왜 이런 일이 일어날 수 있겠습니까?Any_instance가 모델에서 정의되지 않았습니다.

require 'spec_helper' 

describe Subscriber do 

    it {should belong_to :user} 

    describe "send_message should use mobile to send message" do 
    subscriber = Subscriber.new(:number => "123") 
    Mobile.any_instance.should_receive(:send_sms).with("123") 
    subscriber.send_message("hello!") 
    end 
end 

오류

/subscriber_spec.rb:9:in `block (2 levels) in <top (required)>': 
undefined method `any_instance' for Mobile:Class (NoMethodError) 

내 RSpec에 버전

보석 "RSpec에 레일", "> = 2.11.0"(내 gemfile에서 찍은 것입니다) : 그룹 => [: 개발, : 테스트]

감사합니다!

답변

7

정말 명확 : it 블록에서 테스트를 완료하지 않았습니다. 그게 다야.

+0

오, 이런. 이 질문에 지금 embarressed. 감사! – Karan

+1

그거 알아? 한번은 미쳐 버렸습니다. 방금 배웠습니다; – apneadiving

+2

@Newton : 이것은 어느 시점에서 모든 RSpec 사용자에게 발생합니다. 그것은 시작과 같습니다. 그래서 축하하십시오 - 오늘 너는 남자 야! – zetetic

관련 문제