使用我使用的旧的Shoulda插件,我曾经能够执行以下操作:
should_have_many :posts, :authors, :comments
升级我的Shoulda版本后,我不得不将其更改为:
should have_many :posts
should have_many :authors
should have_many :comments
我已经尝试将它全部放在一行上,所以它只是
should have_many :posts, :authors, :comments
但那不起作用。反正有没有干这个?
我正在使用Shoulda 2.11.3
答案 0 :(得分:1)
你可以尝试:
[:posts, :authors, :comments].each do |models|
it { should have_many(models) }
end
这将在结果中显示为三个单独的测试。
我使用Rspec,所以上面是Rspec格式,但我认为类似的方法应该适用于Test :: Unit。
我不确定这是否会为你节省很多,但如果你有许多相同类型的关系,它将变得更有价值。也许它更适用于allow_mass_assignment_of
。