Forum: RSpec rspec-rails fails to find a controller name

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
51f7e07d5414a849c25f5cfc83d908aa?d=identicon&s=25 unknown (Guest)
on 2009-04-24 21:34
(Received via mailing list)
Hi,
  I have a problem that seems a bit strange. No matter how I specify the
controller name in a rails controller rspec I am always presented with

'HostController Retrieving /host via GET should redirect if not logged
in' FAILED
Controller specs need to know what controller is being specified. You
can
indicate this by passing the controller to describe():

  describe MyController do

or by declaring the controller's name

  describe "a MyController" do
    controller_name :my #invokes the MyController
end

This is the result of running this command over this file

Command : spec -c -fs spec/controllers/host_controller_spec.rb
File:
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe HostController, "Retrieving /host via GET" do
  integrate_views
  controller_name :host
  it "should redirect if not logged in" do
    #session[:user] = nil
    #get :index
    #response.should redirect_to("/user/login")
  end
end

 In have tried this with and without the text string after the
controller name on the describe line. I have also tried it with and
without the controller_name directive. It always gives this message.
What am I doing wrong?!?!?

Rails version 2.0.2

Rpec version 1.2.4 and 1.2.0
Rpsec-rails version 1.2.4 and 1.2.0

Thanks a lot if you can help in any way.

  Paul.kelly@infineon.com
387fb00ef9d6d523d43018d9c81ab36b?d=identicon&s=25 Jonathan Linowes (Guest)
on 2009-04-25 06:48
(Received via mailing list)
I assume you tried it with the 3 lines (including   get :index)
uncommented


On Apr 24, 2009, at 1:32 PM, <Paul.Kelly@infineon.com>
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2009-04-25 15:43
(Received via mailing list)
On Fri, Apr 24, 2009 at 12:32 PM,  <Paul.Kelly@infineon.com> wrote:
>
> describe HostController, "Retrieving /host via GET" do
>
> Rails version 2.0.2

The oldest rails supported by rspec-1.2.x is rails-2.0.5. Your options
are to either upgrade your rails app to 2.0.5, which is what I'd
recommend (path of least resistance since you're not crossing a minor
version boundary) or to downgrade rspec to pre 1.2.

Good luck.

Cheers,
David
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2009-04-25 16:12
(Received via mailing list)
On Sat, Apr 25, 2009 at 8:25 AM, David Chelimsky <dchelimsky@gmail.com>
wrote:
>> or by declaring the controller's name
>>
>>  In have tried this with and without the text string after the controller name on the 
describe line. I have also tried it with and without the controller_name directive. It 
always gives this message. What am I doing wrong?!?!?
>>
>> Rails version 2.0.2
>
> The oldest rails supported by rspec-1.2.x is rails-2.0.5. Your options
> are to either upgrade your rails app to 2.0.5, which is what I'd
> recommend (path of least resistance since you're not crossing a minor
> version boundary) or to downgrade rspec to pre 1.2.

BTW, I was able to reproduce the behaviour you describe with
rspec-1.2.4 and rails-2.0.2, so there is an incompatibility there
(i.e. it's not something else that you're missing or is specific to
your particular app or environment)
This topic is locked and can not be replied to.