다음은 테스트하고 싶은 도우미 메서드입니다.이동 레일 연결 방법
def posts_correlation(name)
if name.present?
author = User.find_by_name(name)
author.posts.count * 100/Post.count if author
end
end
사용자를위한 공장.
factory :user do
email '[email protected]'
password 'secret'
password_confirmation { password }
name 'Brian'
end
마지막으로 영구적으로 실패하는 테스트입니다.
test "should calculate posts count correlation" do
@author = FactoryGirl.create(:user, name: 'Jason')
@author.posts.expects(:count).returns(40)
Post.expects(:count).returns(100)
assert_equal 40, posts_correlation('Jason')
end
이와같이.
UsersHelperTest:
FAIL should calculate posts count correlation (0.42s)
<40> expected but was <0>.
test/unit/helpers/users_helper_test.rb:11:in `block in <class:UsersHelperTest>'
그리고 모든 문제는 모카 정말 저자의 글의 카운트 값을 조롱하지 않는다는 것입니다, 그리고이 일을 더 나은 방법이 있습니까 0 대신
(40)의 반환 @author.posts.expects(:count).returns(40)
은?
어떻게하면 : author.stubs (: posts) .returns (스텁 (: 개수 => 40))'. 즉, stub_chains는 Rspec에서 훨씬 더 잘 처리됩니다. – apneadiving