Agile Web Development with Rails, Edition 4

Agile Web Development with Rails, Edition 4

11.6 Iteration F6: Testing AJAX changes 11.4 Iteration F4: Hide an Empty Cart

11.5 Iteration F5: Making Images Clickable

Review our current storefront markup

edit app/views/store/index.html.erb
<% if notice %>
<p id="notice"><%= notice %></p>
<% end %>
 
<h1>Your Pragmatic Catalog</h1>
 
<% @products.each do |product| %>
  <div class="entry">
    <%= image_tag(product.image_url) %>
    <h3><%= product.title %></h3>
    <%= sanitize(product.description) %>
    <div class="price_line">
      <span class="price"><%= number_to_currency(product.price) %></span>
      <%= button_to 'Add to Cart', line_items_path(product_id: product),
        remote: true %>
    </div>
  </div>
<% end %>

Associate image clicks with submit button clicks

edit app/assets/javascripts/store.js.coffee
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/
 
$ -> 
  $('.store .entry > img').click ->
    $(this).parent().find(':submit').click()

The page looks no different

get /
Your Cart
CoffeeScript $36.00
Total $36.00

Your Pragmatic Catalog

Cs

CoffeeScript

CoffeeScript is JavaScript done right. It provides all of JavaScript's functionality wrapped in a cleaner, more succinct syntax. In the first book on this exciting new language, CoffeeScript guru Trevor Burnham shows you how to hold onto all the power and flexibility of JavaScript while writing clearer, cleaner, and safer code.

$36.00
Ruby

Programming Ruby 1.9

Ruby is the fastest growing and most exciting dynamic language out there. If you need to get working programs delivered fast, you should add Ruby to your toolbox.

$49.95
Rtp

Rails Test Prescriptions

Rails Test Prescriptions is a comprehensive guide to testing Rails applications, covering Test-Driven Development from both a theoretical perspective (why to test) and from a practical perspective (how to test effectively). It covers the core Rails testing tools and procedures for Rails 2 and Rails 3, and introduces popular add-ons, including Cucumber, Shoulda, Machinist, Mocha, and Rcov.

$34.95

Run tests... oops.

rake test
Run options: --seed 27030
 
# Running tests:
 
.......
 
Finished tests in 0.833977s, 8.3935 tests/s, 33.5741 assertions/s.
 
7 tests, 28 assertions, 0 failures, 0 errors, 0 skips
Run options: --seed 7163
 
# Running tests:
 
...E...F.EEEE....EEEE..
 
Finished tests in 1.983896s, 11.5934 tests/s, 17.6421 assertions/s.
 
  1) Error:
test_should_get_index(CartsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/carts_controller.rb:7:in `index'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__2571557650377413580__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/carts_controller_test.rb:9:in `block in <class:CartsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__2550265910242308025__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  2) Failure:
test_should_create_line_item(LineItemsControllerTest) [/home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/line_items_controller_test.rb:28]:
Expected response to be a redirect to <http://test.host/carts/980190963> but was a redirect to <http://test.host/>.
--- expected
+++ actual
@@ -1 +1 @@
-"http://test.host/carts/980190963"
+"http://test.host/"
 
 
  3) Error:
test_should_get_edit(LineItemsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__258714370760198477__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/line_items_controller_test.rb:39:in `block in <class:LineItemsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__991883607434885741__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  4) Error:
test_should_get_index(LineItemsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/line_items_controller.rb:7:in `index'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__258714370760198477__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/line_items_controller_test.rb:9:in `block in <class:LineItemsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__991883607434885741__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  5) Error:
test_should_get_new(LineItemsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/line_items_controller.rb:29:in `new'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__258714370760198477__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/line_items_controller_test.rb:15:in `block in <class:LineItemsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__991883607434885741__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  6) Error:
test_should_show_line_item(LineItemsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/line_items_controller.rb:18:in `show'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__258714370760198477__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/line_items_controller_test.rb:34:in `block in <class:LineItemsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__991883607434885741__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  7) Error:
test_should_get_edit(ProductsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:5:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__4486012060863808816__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/products_controller_test.rb:44:in `block in <class:ProductsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__2167056086070870415__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  8) Error:
test_should_get_index(ProductsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/products_controller.rb:7:in `index'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__4486012060863808816__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/products_controller_test.rb:18:in `block in <class:ProductsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__2167056086070870415__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
  9) Error:
test_should_get_new(ProductsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/products_controller.rb:29:in `new'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__4486012060863808816__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/products_controller_test.rb:24:in `block in <class:ProductsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__2167056086070870415__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
 10) Error:
test_should_show_product(ProductsControllerTest):
ActionView::Template::Error: undefined method `line_items' for nil:NilClass
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___4271162727545841683_31173960'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:142:in `block in render'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_view/template.rb:140:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:51:in `render_with_layout'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:37:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/template_renderer.rb:10:in `render'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:36:in `render_template'
    /home/rubys/git/rails/actionpack/lib/action_view/renderer/renderer.rb:17:in `render'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:108:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/streaming.rb:224:in `_render_template'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:102:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:33:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:87:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:16:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/benchmark.rb:295:in `realtime'
    /home/rubys/git/rails/activesupport/lib/active_support/core_ext/benchmark.rb:5:in `ms'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `cleanup_view_runtime'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:39:in `render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:10:in `default_render'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/app/controllers/products_controller.rb:18:in `show'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:167:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rendering.rb:10:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:374:in `_run__4486012060863808816__process_action__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/callbacks.rb:17:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/rescue.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `block in instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /home/rubys/git/rails/activesupport/lib/active_support/notifications.rb:123:in `instrument'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/params_wrapper.rb:204:in `process_action'
    /home/rubys/git/rails/activerecord/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/base.rb:121:in `process'
    /home/rubys/git/rails/actionpack/lib/abstract_controller/rendering.rb:44:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/metal/testing.rb:17:in `process_with_new_base_test'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:472:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:49:in `process'
    /home/rubys/git/rails/actionpack/lib/action_controller/test_case.rb:387:in `get'
    /home/rubys/git/awdwr/edition4/work-200-40/depot/test/functional/products_controller_test.rb:39:in `block in <class:ProductsControllerTest>'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:976:in `run'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:29:in `block in run'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:424:in `_run__2167056086070870415__setup__callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:366:in `__run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/callbacks.rb:79:in `run_callbacks'
    /home/rubys/git/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb:28:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:814:in `block in _run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:807:in `_run_suite'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `block in _run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `map'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:797:in `_run_suites'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:773:in `_run_anything'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:936:in `run_tests'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:923:in `block in _run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `each'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:922:in `_run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:911:in `run'
    /home/rubys/.rvm/rubies/ruby-head-n34575/lib/ruby/2.0.0/minitest/unit.rb:691:in `block in autorun'
 
23 tests, 35 assertions, 1 failures, 9 errors, 0 skips
Errors running test:functionals! #<RuntimeError: Command failed with status (1): [/home/rubys/.rvm/rubies/ruby-head-n34575/b...]>

11.6 Iteration F6: Testing AJAX changes 11.4 Iteration F4: Hide an Empty Cart