On Oct 27, 2010, at 12:40 PM, Eugen Ciur wrote:

> Hi,
> 
> I am testing a model A, which calls inside url_for method; rspec
> complains that url_for is undefined

Sometimes error messages tell you exactly what you need to know. In this case, 
url_is not defined in ActiveRecord models. This is true whether you're in a 
spec or in the console:

class Gadget < ActiveRecord::Base
  def gimme_your_url
    url_for(self)
  end
end

$ script/rails c
Loading development environment (Rails 3.0.2.pre)
ruby-1.8.7-p302 > Gadget.new.gimme_your_url
NoMethodError: undefined method `url_for' for #<Gadget id: nil, created_at: 
nil, updated_at: nil>


> (which I suppose is because url_for
> is called outside view's context)
> 
> How can I mock url_for rails method?

Stubbing this doesn't make sense if it's not normally available in the model. 
Why do you want to call url_for from a model instead of a view template or a 
helper?
_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to