如何编写Rails Rspec中带Scope的唯一性验证测试用例?报错求助
问题解决:Rails唯一性验证的RSpec测试报错
你的模型验证规则仅将user_id作为post_id唯一性的范围,但测试代码错误地在scoped_to中额外添加了created_at,导致测试期望的验证逻辑与实际模型规则不匹配,从而触发报错。
修正后的测试代码如下:
it { is_expected.to validate_uniqueness_of(:post_id).scoped_to(:user_id) }
这个测试会验证同一user_id下的post_id必须唯一,和你模型中的验证规则完全对齐,能够正常通过测试。
内容的提问来源于stack exchange,提问作者Hammad Abdullah
相关产品推荐
相关产品推荐

