【发布时间】:2014-01-27 17:03:47
【问题描述】:
我一直在学习使用 rspec。 我必须测试这个:
Book.where(old:false, id:user.collections.select(:book_id).group(:book_id).map(&:book_id)).map{|b|[b.name, b.id] }
我已经做的是:
@user = Fabricate(:user)
@book1 = Fabricate(:book, old:false)
@book2 = Fabricate(:book, old:true)
@collection = Fabricate(:collection, book_id:@book1.id)
@collection2 = Fabricate(:collection, book_id:@book2.id)
@user.collections << @book1 << @book2
@books = Book.where(old:false, id:@user.collections.select(:book_id).group(:book_id).map(&:book_id)).map{|b|[b.name, b.id]}
.....
it "books" do
subject[:filter].should == @books.map{|d| [d.name, d.id]}
end
它期待一本书,但我得到了 0。我忘记了什么吗? 提前感谢您的任何想法和帮助!
【问题讨论】:
标签: sql ruby-on-rails rspec tdd