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 がある場合でも、2 番目の User.find で仕様が失敗します。

「describe "blah" do」ブロックを削除すると、コードは正常に機能するようです。私はマシニスト 2.0.0.beta2 を使用しています。

test.rb 構成ファイルで machinist キャッシングを無効にすると、それも機能します。

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

ここで私が間違っていることを知っている人はいますか?仕様で複数の記述をネストするのは悪い習慣ですか?

ありがとう

4

1 に答える 1

1

これも機能するはずです:

u = User.make
u.save

Machinist を使用して、このバグに常に遭遇します。ネスト記述に限ったことではないと思いますが、他の状況でもポップアップするようです。彼らがこれを修正してくれることを本当に願っています。これにより、追跡が困難な一見ランダムなエラーが発生します。

于 2012-03-28T00:14:18.563 に答える