On dirait que cuke n'affiche pas le message d'erreur complet (au moins lorsque le problème survient dans le modèle), ce qui rend la localisation du problème très difficile.Comment faire un message d'erreur concombre show full (rails)?
Voici ce qu'il envoie sur une erreur:
... And I am on checkout page # features/step_definitions/webrat_steps.rb:6 You have a nil object when you didn't expect it! The error occurred while evaluating nil.items (ActionView::TemplateError) features/manage_orders.feature:9:in `And I am on checkout page' ...
Et voici ce que les rails montre quand le même problème est reproduit dans le navigateur:
Showing app/views/cart/show.erb where line #46 raised:
You have a nil object when you didn't expect it!
The error occurred while evaluating nil.items
Extracted source (around line #46):
43: </script>
44:
45: <% ths = %w{th_title th_price th_subtotal th_quantity}.collect {|th| t th.intern} %>
46: <% table(@cart.items, ths) do |cart_item, style| -%>
47: <tr class="<%= style %>">
48: <td width="60%"><%=h cart_item.title %></td>
49: <td width="20%"><%=number_to_currency cart_item.price %></td>
Le premier est un peu trop propre. Aucune exception dans cucumber.log non plus. Et mon modèle a quelques partiels et une mise en page. En l'absence d'indices, tout à fait une enquête.
Y at-il une fiche secrète à tirer pour obtenir le concombre afficher l'erreur complète?
Le titre de votre question aurait fait une bonne chanson ou un titre d'épisode de série TV, mais pas une question SO, donc je l'ai modifié :) – karim79