我正在编写一个规范来测试一种down_vote
方法。但为了测试这一点,我需要在数据库中为现有投票输入一个条目。所以我的规范看起来像这样:
describe "down_vote" do
it "lowers vote count" do
video = Factory.create(:video)
user = Factory.create(:user)
vote = Factory.vote(:vote, :voter_id => user.id, :voteable_id => video.id)
expect do
user.down_vote(video)
end.to change{ Vote.count }.by 1
end
end
可以编写这样的规范/测试吗?似乎有很多我不太习惯的设置,但我真的不知道有什么其他方法可以测试它。