# RSpec story failing because of routing error on "/"

**URL:** <https://www.ruby-forum.com/t/rspec-story-failing-because-of-routing-error-on/140507>\
**Category:** RSpec\
**Created:** [June 15, 2008, 11:41am UTC](https://www.ruby-forum.com/t/rspec-story-failing-because-of-routing-error-on/140507 "2008-06-15T11:41:43Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Danny\_Sofer](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b782af/32.png) [@Danny\_Sofer](https://www.ruby-forum.com/u/Danny_Sofer)\
**Post date:** [June 15, 2008, 11:41am UTC](https://www.ruby-forum.com/t/rspec-story-failing-because-of-routing-error-on/140507/1 "2008-06-15T11:41:43Z")

</div>

Greetings!

Here’s the problem.

When running tests on the restful\_authentication plugin, I am getting  
a routing error on “/”.

Which I don’t really understand, because the route “/” certainly does  
exist as I can confirm when I run ./script/server and point my browser  
at [http://localhost:3000/](http://localhost:3000/)

Here is an example of the error I am getting when I run “ruby stories/  
rest\_auth\_stories.rb”:

Scenario: Anonymous user can get a login form.

```
 Given an anonymous user (FAILED)

 When she goes to /login

 Then she should be at the new sessions page
 And the page should look AWESOME (SKIPPED)
 And she should see a <form> containing a textfield: Login,

```

password: Password, and submit: ‘Log in’

FAILURES:  
1) Creating an account (Anonymous user can start creating an  
account) FAILED  
ActionController::RoutingError: No route matches “/” with  
{:method=\>:get}  
./stories/steps/user\_steps.rb:104:in `log_out!' ./stories/steps/user_steps.rb:12:in `an anonymous user’  
stories/rest\_auth\_stories.rb:17

I am running:

Rails: 2.1.0  
RSpec-1.1.4

And this is a completely fresh install with no code added by me.

Here are the steps to replicate (from my app root):

git clone git://github.com/rails/rails.git vendor/rails  
git clone git://github.com/dchelimsky/rspec.git vendor/plugins/rspec  
git clone git://github.com/dchelimsky/rspec-rails.git vendor/plugins/  
rspec-rails  
git clone git://github.com/technoweenie/restful-authentication.git  
vendor/plugins/restful-authentication

./script/generate rspec  
./script/generate authenticated user sessions

mate app/controllers (and added " include AuthenticatedSystem" to the  
application controller)

rake db:migrate  
rake db:test:prepare

ruby stories/rest\_auth\_stories.rb

Many thanks for your kind attention,

danny sofer

---

<div class="post-metadata">

**Author:** ![Danny\_Sofer](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b782af/32.png) [@Danny\_Sofer](https://www.ruby-forum.com/u/Danny_Sofer)\
**Post date:** [June 15, 2008, 11:35pm UTC](https://www.ruby-forum.com/t/rspec-story-failing-because-of-routing-error-on/140507/2 "2008-06-15T23:35:06Z")

</div>

On 15 Jun 2008, at 14:09, David C. wrote:

> there is an index.html file in public, not because Rails routing is  
> getting you there.
> 
> Add an explicit root mapping to the appropriate controller and  
> you’ll get past this. Looks like there are more problems ahead, but  
> they seem to be in restful\_authentication.
> 
> Cheers,  
> David

Oh, a bit obvious!

Thank you so much.

For the record, it is possible to get the Restful Authentication  
stories running with a few extra steps.

After installing all the various plugins as outlined in my previous  
missive, do the following:

1. Add a “/” route to config.routes.rb: (as pointed out by David)  
map.login ‘/’, :controller =\> ‘sessions’, :action =\> ‘new’

2. Copy the line “include AuthenticatedSystem” into class  
ApplicationController in app/controllers/application.rb

3. Add app/views/layouts/application.html.erb with something like the  
following:

 Restful auth 
\<%= flash[:notice] %\>

\<%= flash[:error] %\>
 \<%= yield :layout %\>
1. In /stories/sessions/users/sessions.story there is a scenario which  
assumes that “fixtures have been run sometime”. Well they haven’t, so:

on lines 56 and 110.

Then run: ruby stories/rest\_auth\_stories.rb

“16 scenarios: 16 succeeded, 0 failed, 0 pending”

Hooray!

---

<div class="post-metadata">

**Author:** ![Danny\_Sofer](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b782af/32.png) [@Danny\_Sofer](https://www.ruby-forum.com/u/Danny_Sofer)\
**Post date:** [June 15, 2008, 3:11pm UTC](https://www.ruby-forum.com/t/rspec-story-failing-because-of-routing-error-on/140507/3 "2008-06-15T15:11:18Z")

</div>

On Jun 15, 2008, at 4:33 AM, Danny Sofer wrote:

> Greetings!
> 
> Here’s the problem.
> 
> When running tests on the restful\_authentication plugin, I am  
> getting a routing error on “/”.
> 
> Which I don’t really understand, because the route “/” certainly  
> does exist as I can confirm when I run ./script/server and point my  
> browser at [http://localhost:3000/](http://localhost:3000/)

Actually, that route does NOT exist. You’re seeing something because  
there is an index.html file in public, not because Rails routing is  
getting you there.

Add an explicit root mapping to the appropriate controller and you’ll  
get past this. Looks like there are more problems ahead, but they seem  
to be in restful\_authentication.

Cheers,  
David
