我将Rails项目中Gemfile中的'shoulda-matchers'从1.4.2版本更新到了2.0.0,现在当我运行rspec测试时,它给了我以下错误

undefined method `assign_to' for #<RSpec::Core::ExampleGroup::Nested_4::Nested_1::Nested_4::Nested_1:0x007fc96eaaaf48>

在新的2.0.0版本中是否删除了此方法?

最佳答案

是的,以下方法在1.5.0版中已弃用,而在2.0.0版的shoulda-matchers中已删除。

  • assign_to
  • respond_with_content_type
  • query_the_database
  • validate_format_of
  • have_sent_email
  • permit(强参数匹配器)
  • delegate_method

  • 如果您当前正在使用这些方法,则开发人员建议以另一种方式测试代码。

    有关更改的简短列表,请访问https://github.com/thoughtbot/shoulda-matchers/blob/master/NEWS.md#v-200

    有关更改的详细列表以及删除这些方法的原因,请访问其博客http://robots.thoughtbot.com/post/47031676783/shoulda-matchers-2-0

    09-28 07:06