Forum: Ruby on Rails How to test with RSpec a Rails plugin using “link_to” and “current_page?”

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.
Ca20ac1b518dc2de6852f3c612fb0b8c?d=identicon&s=25 Christian Lescuyer (Guest)
on 2008-10-12 15:29
(Received via mailing list)
I'm writing a Rails plugin that builds up a menu in a view. I'm using
*link`_`to* to build the link and *current_page?* to set
class="active" on the current page.

I've *include*d *ActionView::Helpers::UrlHelper* so I can use
*link`_`to*.

To get *current`_`page?* working in the view, I've had to inherit the
current class (apparently ActionView::Base) and it works perfectly
well. Unfortunately, this totally breaks the tests with RSpec.

I'm calling *link`_`to* and *current`_`page?* like this:

    def menu(options = {}, &block)
      carte = my_menu.new(self)
      yield carte
      carte.to_s unless carte.empty?
    end

    class my_menu
      include ActionView::Helpers::TagHelper
      include ActionView::Helpers::UrlHelper

      def initialize(base)
        @base = base
      end

      def link
        @base.link_to(name, url_options, html_options)
        @base.current_page?(url_options)
      end
    end

And I get this error with RSpec:
    Undefined method `link_to' for #<
Spec::Rails::Example::RailsExampleGroup::Subclass_1:0x24afa90>

Any clue?
This topic is locked and can not be replied to.