저는 rspec-spies을 사용하고 있으며 모든 호출이 완료된 후에 스파이를 검사 할 수 있는지 궁금합니다. 예를 들어rspec-spies는 스텁 메소드 및 메소드 스파이에 대한 호출 인수를 검사합니다.
, 내가
# setup
Post.stub(:find).with(@post.id).and_return(@post)
do_something_to_call_post_find()
# verify find was called
Post.should have_received(:find).with(@post.id)
이 잘 작동하지만, 포스트 하지 않았다 경우가 내가 도움이되지 않는 오류 메시지가, 예상되는 인수를받을 뭔가를 할 경우 (기본적으로 "포스트 받았어야 발견 123 "). 대신, `find
에 대한 실제 호출이 무엇인지보고 싶습니다.
do_something_to_call_post_find()
직후에 일시 중지 할 수 있지만 모든 통화/인수를 스텁/스파이로 나열하는 방법이 있습니까? 내가 @post.id is an integer
, 내 컨트롤러 테스트를 문자열로 (아이디 포함) PARAMS를 전달 Post.should have_received(:find).with(@post.id)
를 기다리고 있었다 -
실제 사용 사례 이 사람은 오늘 나를 붙 잡았다. 실제 통화를 검사 할 수 있다면 123
과 "123"
의 차이를 보았을 것입니다.
고마워, 나는 그것을 깨닫는다. 그러나 그것은 정말로 그 질문에 대답하지 않는다. rspec 2.14가 스파이/스텁 호출을 검사하는 방법을 제공합니까? –
실제 값과 예상 값의 차이를 보여줍니다. 그것이 제가 언급 한 "부족"입니다. 통합이 아닙니다. 너 다른 걸 찾고있어? –
예, 메소드에 대한 호출 및 각각의 인수를 표시하는 무언가를 찾고 있습니다. (예상 값과 일치하는지 여부 만이 아님) –