Forum: Ruby on Rails controller utility method: want to use in tests. Where should it go?

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
itsastickup (Guest)
on 2009-02-10 01:01
(Received via mailing list)

I've a simple method I call in my action methods. So far I've put it
in application.rb in the ActionController class.

However I can't call it from my test code. Where should I be putting
it? I've tried adding this to application.rb :

module ActionController

  def handy
      return dostuff


but it didn't work.

Is this possible?
Frederick Cheung (Guest)
on 2009-02-10 01:12
(Received via mailing list)
On 10 Feb 2009, at 00:01, itsastickup wrote:

>  def handy
>      return dostuff
>  end
> end
> but it didn't work.
> Is this possible?

adding a method to application.rb lets controllers call it because you
are adding a method to ApplicationController and your controllers
inherit from that.
In a test you are subclassing Test::Unit::TestCase (or more recently
ActiveSupport::TestCase or some other class if you are using a
different testing framework), so clearly you can't call and
ApplicationController instance method. Easiest thing is probably to
put the methods in a module and include it in both places.

itsastickup (Guest)
on 2009-02-10 01:21
(Received via mailing list)
Ok thanks
This topic is locked and can not be replied to.