私はフォームをテストしています。あなたがテストのためのアレイ(7,11)にオプション値のすべてを取得するにはどうすればよいRails 3でHTML :: selectorをどのように使いますか?
<form accept-charset="UTF-8" action="/the_action" method="post">
<select id="id" name="z[z_id]">
<option value="7">Foo</option>
<option value="11">Bar</option>
</select>
</form>
:それはのように見えますか?これらの値はモデルのIDであるため、各オブジェクトの特定の属性をテストします。
私はHTML :: Selectorのためにapi docs(http://api.rubyonrails.org/)を読んだが、役に立たなかった。
また、Railsガイド(http://guides.rubyonrails.org/testing.html#testing-views)からassert_selectを使用しましたが、同等性についてテスト以外の方法で値を使用する方法を理解していませんでした。
紹介リソースはありますか?
ありがとうございました。
編集:ここでは、コードビューにあります:
<%= form_tag(:action => :the_action) do %>
<%= select :model_name, :model_id, Model.where(:user_id => 1).collect{|m| [m.full_name, m.id]}, :selected => selected_value, :include_blank => false %>
<%= submit_tag "view model" %>
<% end %>
この機能には、コントローラのコードはありません。
Hmmm ...実際には正しい名前が表示されるようにコントローラをテストしていますが、それが私の唯一の方法ですこれをテストすると考えることができます。 –
しかし、コントローラーはルーティングを行うだけで、表示されているものは実際にモデルからビューに渡す必要があります。もしあなたがここに何かを得ていないのであれば、それは関連するモデルとコントローラコードを貼り付けると助けになるかもしれませんが、ちょうど間違っていると思います。 – chrispanda
問題はありません。ご協力いただきありがとうございます。私は質問にコードを追加しました。関連するコントローラコードはありません。上記の機能はすべてビューで行われます。 –