ruby-on-rails – rspec 3.0 belongs_to association

我正在尝试使用rspec 3.0测试belongs_to关联,但我一直遇到错误

NoMethodError:RSpec :: Core的未定义方法`belongs_to’

  it "should belong to a user" do
ride = Ride.new
user = User.new
user.rides << ride
expect(ride).to belong_to user

结束

我在rspec 3.0的文档中找不到任何测试高级关联的东西.请帮忙!

最佳答案 您只需检查关联:

it "belongs to a user" do
  ride = Ride.new
  user = User.new
  user.rides << ride
  expect(ride.user).to be user
end

在此上下文中,匹配器验证对象标识.因此,当且仅当用户对象具有相同的object_id时,这将通过.在这种情况下,这就是你想要的,并且在阅读方式上具有语义意义.

点赞