El siguiente conjunto de campo casilla forma Formtastic:casilla Formtastic params enviada de manera diferente por Carpincho que por aplicación real
<%= semantic_form_for @store do |f| %>
<%= f.inputs do %>
<%= f.input :services, :as => :check_boxes, :collection => Service.all %>
<% end -%>
<% end -%>
está enviando malas params para: servicios en una prueba de pepino utilizando capibara, por lo que la prueba falla, mientras que el aplicación real envía los correctos, que se procesa bien:
#cucumber steps using the boiler_plate capybara web_steps.rb:
Given a "Mail Order" service
...(steps for rest of the form)...
When I check "Mail Order"
And I press "Create Store"
Then I should see "Store was successfully created."
And I should see "Mail Order"
#params sent by cucumber
"store"=>{"services"=>["[\"4d8247ed7f5bfd2275000004\"]"]
#params sent by app on manual test
"store"=>{"services"=>["4d8247ed7f5bfd2275000004"]}
Aunque el formulario hTML en sí se hace de la misma manera en ambos casos:
<input id="store_services_4d8247ed7f5bfd2275000004" name="store[services][]" type="checkbox" value="4d8247ed7f5bfd2275000004" />
Parece que en algún lugar durante la solicitud de creación de params, los pares clave/valor de formulario para ese campo se analizan de manera diferente cuando son enviados por Cucumber/Capybara.
¿Alguien más se encuentra con esto?
Probablemente esa solución se convierta en una "respuesta": otras personas pueden buscar (y encontrar) este problema, pero omítanlo, pensando que no hay una solución. –
No pude encontrar una manera de responder mi propia pregunta. Puede que no tenga suficientes privilegios? Busqué en el sitio meta respuestas sobre esto, pero no tuve suerte. – oliverbarnes
Si está conectado, debe tener una gran caja justo debajo de estos comentarios. No importa si es tu propia pregunta o no. –