私はFactoryGirlをフィクスチャに使用していますが、実際には有効な検証エラーを生成していません。FactoryGirlが有効な検証エラーを出さない
私はいつもactiverecord.errors.models.messages.record_invalidのメッセージを受け取ります。
これを診断するためにさらに詳細が必要であるかどうかは不明です。これにより、各エラーを追跡するのが非常に遅いプロセスになります。
例の工場:
Factory.define :partner do |partner|
partner.sequence(:username){ |n| "amcconnon#{n}" }
partner.first_name "Bobby Joe"
partner.last_name "Smiley"
partner.sequence(:email){ |n| "bob{n}@partners.com" }
partner.phone_number "5557 5554"
partner.country_id 75
partner.password "password"
partner.password_confirmation "password"
end
その後工場(:パートナー)=> "はActiveRecord :: RecordInvalid例外:何かがこれらの変更を間違っていたように見えます"
実際の問題は、もちろんメールですシーケンスはnを正しく使用せず、電子メールに対して独自の検証が行われます。しかしそれは説明のためです。
レール=> 3.2.2 factory_girl 2.6.1
これを診断するために必要なその他のdeets?
(注:これはちょうど工場を読みやすくを追加するように編集)
EDIT:ビジャンさんのコメントを1として
:「まさに私は何をしようとしています」
"rspec spec"を実行しようとしています。 Factory.new({blah ...})から取得するのと同じエラーが含まれていない場合、Factory(:パートナー)のようなファクトリをこの場合はエラーメッセージとして使用したいと思います。次に、検証の失敗を見ました。
あなたは正確に何をしようとしていますか?個々のエラーでpartner.errorsまたは.messageを呼び出して、問題の内容を調べることができます。 – Bijan
最後に私の編集を参照してください –
したがって、バリデーションに失敗した属性を意図的に含むファクトリ定義を変更してバリデーションをテストしようとしていますか?それとも私は誤解したことがありますか? –