试图写一个测试来验证 :user_id 与 scope :board_id 的唯一性。
模型。
class Membership < ApplicationRecord
belongs_to :board
belongs_to :user
validates_uniqueness_of :user_id, scope: :board_id, presence: true
end
我试着像这样测试
it { should validate_uniqueness_of(:user_id) }
it expect.to have_many(:membership).through(:board_id)
谢谢你的帮助
如果使用shoulda-matchers,可以用两个期望值来完成(即使是一个模型行)。
it { should validate_presence_of(:user_id) }
it { should validate_uniqueness_of(:user_id).scoped_to(:board_id) }