Why does this test fail.


Sorry for the double post but on reddit nobody seems to have the solution.

im following the agile web developement book but then with my own layout.

Now am at chapter 9 where a shopping card is added. But as soon as I try to test the card I see this error

RuntimeError: @controller is nil: make sure you set it in your test’s setup method.

my code can be found here : https://github.com/roelof1967/commerce-try

Who can help me figure out why this test is failing. According to the book it must all be successfull.


Normally that problem occurs when you have a weird nesting or the naming of the controller compared to the test name is not correct as you can see in this 2 posts:


I only use rspec so I am not sure that this:


has the correct syntax. does the test for delete at the end fail too?

The file in app/controllers/concerns is not named correctly - it declares a CurrentCart module, but is named current_card.rb. Fixing that makes all the tests pass.

–Matt Jones

I found it . The problem was in the name. When I change it to current_cart.rb it worked fine.