2

这是我的规范代码不起作用:

require 'spec_helper'

describe User do
  describe "blah" do
    it "should save itself" do
      user = User.make!
      u = User.find user.id
      user = User.make!
      u = User.find user.id
    end
  end
end

即使该用户对象具有 id,该规范在第二个 User.find 上也失败了。

如果我删除 'describe "blah" do' 块,那么代码似乎可以正常工作。我正在使用机械师 2.0.0.beta2。

如果我在我的 test.rb 配置文件中禁用机械师缓存,它也可以工作:

Machinist.configure do |config|
  config.cache_objects = false
end

有人知道我在这里做错了什么吗?在规范中嵌套多个描述是一种不好的做法吗?

谢谢

4

1 回答 1

1

这也应该有效:

u = User.make
u.save

我一直在使用机械师遇到这个错误。我不认为它是嵌套描述所独有的,它似乎也出现在其他情况下。真希望他们能解决这个问题。它会导致难以追踪的看似随机的错误。

于 2012-03-28T00:14:18.563 回答