2017-08-17 2 views
0

実際のネストされたフォーム自体はうまくいきますが、後でそれを壊さないようにテストをしたいと思っています。さらにネストされたフォームが計画されているので、これを実際に把握したいと思います。入れ子になったRails 5フォームをテストしようとしています(mintest)

私は私のListControllerTestにこの失敗のテストを取得しています:

"ListItem.count" didn't change by 1. 
Expected: 1 
Actual: 0 

をこのコードで: "List.count" ビットが通過しないことを

https://pastebin.com/BRdtZW2T

注意。繰り返しますが、これは実際に想定されているとおりに正確に動作します。私は実際に私のアプリにフォームを提出するときに問題なくリスト項目を持つリストを作成することができます。

リストは のListItemがfields_for

答えて

0

を使用して作成されているのform_forを使用して作成され、それを考え出しました。まず、テストで投稿されたparamsから 'list_item_attributes'を削除しました。それは冗長に思えた、と私はそこにそれを追加した理由私はそれを削除し、私のテストは異なるエラーが発生したまで、私は確認されませんでした:

TypeError: no implicit conversion of Symbol into Integer 
    app/controllers/lists_controller.rb:15:in `[]' 

これはについてだったが、一部のGoogle検索がこれを上がって何ノーアイデア:それは結局のところ

http://billpatrianakos.me/blog/2013/09/29/rails-tricky-error-no-implicit-conversion-from-symbol-to-integer/

はまさに私の問題です。そこで私はいくつかの角括弧[]を[:list] [:list_item]に追加し、それが働くようにしました。おそらく明確ではなかったので、修正されたペーストビンおよびその記事を参照してください:

https://pastebin.com/uxRjsctK

関連する問題