6

'shoulda-matchers'在我的 rails 项目的 Gemfile 中从版本 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 版本中被删除了吗?

4

1 回答 1

14

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

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

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

有关更改的简要列表,您可以访问https://github.com/thoughtbot/should-matchers/blob/master/NEWS.md#v-200

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

于 2013-04-15T22:21:04.110 回答