rails3,rspec2 ActiveRecord#更改规范中的错误

时间:2011-05-19 19:07:47

标签: ruby-on-rails-3 rspec2 factory-bot shoulda

我正在将我的rails 2应用程序升级到rails 3.我在测试套件中使用了rspec,shoulda和factory girl。

一种特殊的模式导致错误我在研究和解决方面都非常困难。

  # cart controller spec
  @cart = Factory.build(:cart, :payment_status => "authorized", :user_id => @user.id)
  2.times { Factory(:cart_item, :cart => @cart) }

我的规格失败了:

changes is defined by ActiveRecord
./spec/controllers/cart_controller_spec.rb:41
./spec/controllers/cart_controller_spec.rb:41:in `times'
./spec/controllers/cart_controller_spec.rb:41

调用#times方法是安全的(当我只放2.times { puts "hi" }时不会抛出错误)但是我无法看到如何在这里调用#changes。

1 个答案:

答案 0 :(得分:2)

你有一个名为'改变'的专栏吗?我怀疑它与ActiveRecord冲突,你可能需要重命名它。