Shoulda::Matchers::Independent::DelegateMethodMatcher: 未定义的方法`allow_nil'

Shoulda::Matchers::Independent::DelegateMethodMatcher: undefined method `allow_nil'

我正在尝试使用 shoulda-matchers (3.1.2) & [=29 测试我的 Comment 模型的委托方法=]-rails (3.7.2) 在我的 rails (5.0.1) 应用程序中 ruby 2.5.0-p0 (x86_64-linux) 并收到此错误:

1) Comment delegation 
     Failure/Error: it { should delegate_method(:name).to(:user).allow_nil }

     NoMethodError:
       undefined method `allow_nil' for #<Shoulda::Matchers::Independent::DelegateMethodMatcher:0x00005587de5bc488>
     # ./spec/models/comment_spec.rb:11:in `block (3 levels) in <top (required)>'

Finished in 0.00225 seconds (files took 3.62 seconds to load)
1 example, 1 failure

代码非常简洁明了,我认为库中可能存在一些错误,而不是我的实现代码。有谁知道这里出了什么问题?谢谢!

您必须将 shoulda-matchers gem 升级到 4.0.0.rc1 或更高版本。

可以看到allow_nil方法是在thiscommit中引入的,属于4.0.0版本