[rspec-users] response is null when using should_render_rjs

Mathias Biilmann Christensen info at mathias-biilmann.net
Thu Nov 30 05:04:23 EST 2006


And a response to my own question :) :

I put this in the end of my view spec:

module ViewSpecsHelper
     def current_user
       nil
     end
end

and then used render => 'controller/template', :helper => :view_specs

That worked - should be easy to use something similar to that to mock  
error_messages_for as well

Regards,
Mathias



On Nov 30, 2006, at 10:37 AM, Mathias Biilmann Christensen wrote:
> Thanks a lot - that helped a great deal.
>
> I still seem to have problems with helper methods that are not  
> defined in a helper module.  In my Application controller I have a  
> current_user method and then uses "  helper_method :current_user"  
> to be make it usable for my views.  Any way to stub that method in  
> a view test? (I suspect a way to do this would also solve Michael  
> Johnston's error_messages_for problem)
>
> Regards,
> Mathias
>
>
> On Nov 30, 2006, at 1:05 AM, David Chelimsky wrote:
>
>> On 11/29/06, Mathias Biilmann Christensen <info at mathias- 
>> biilmann.net> wrote:
>>> Great to finally having view specs work with edge rails!
>>>
>>> To bad I can't actually use them, since I use helper methods in my
>>> views. Has anybody gotten calls to helper methods to work in view
>>> tests under Rails 1.2 RC1?
>>>
>>> Currently I get "undefined method `crumbs' for #<#<Class:0x340b70c>:
>>> 0x340ab40>" when the view is calling the crumbs helper (<%= crumbs
>>> (@var) %>)
>>>
>>> Hope there's a solution out there!
>>
>> There IS!!!!! Incomplete though they are, the specs are the best
>> source of documentation for questions like this. Take a look at
>> vendor/plugins/rspec/spec/view_spec_spec. It has the answer to your
>> question. I'll give you the highlights, but check out the spec if
>> you're unsure of anything:
>>
>> context "/some/template" do
>>   setup do
>>     render '/some/template', :helper => :some_other #_helper will  
>> get appended
>>   end
>>   ...
>> end
>>
>> OR, if you need more than one:
>>
>> context "/some/template" do
>>   setup do
>>     render '/some/template', :helpers =>  
>> [:one, :another, :yet_another]
>>   end
>>   ...
>> end
>>
>> Cheers,
>> David
>>
>>>
>>> Regards,
>>> Mathias
>>>
>>>
>>> On Nov 29, 2006, at 7:35 AM, David Chelimsky wrote:
>>>
>>>> On 11/28/06, Micah Martin <micah at 8thlight.com> wrote:
>>>>> That did the trick.  Thanks Pat.
>>>>>
>>>>>
>>>>> Micah Martin
>>>>>
>>>>> On Nov 28, 2006, at 5:40 PM, Pat Maddox wrote:
>>>>>
>>>>> Basically in the mean time, just do
>>>>> render :partial => "controller_name/partial_name"
>>>>>
>>>>> So like if the partial is named "person" and it's under the  
>>>>> "people"
>>>>> views dir, it'd be
>>>>> render :partial => "people/person"
>>>>>
>>>>> That'll work until we get it fixed in the plugin.
>>>>
>>>> We got it fixed in the plugin. In trunk (rev 1174).
>>>>
>>>> Cheers,
>>>> David
>>>>
>>>>>
>>>>> _______________________________________________
>>>>> rspec-users mailing list
>>>>> rspec-users at rubyforge.org
>>>>> http://rubyforge.org/mailman/listinfo/rspec-users
>>>>>
>>>>>
>>>> _______________________________________________
>>>> rspec-users mailing list
>>>> rspec-users at rubyforge.org
>>>> http://rubyforge.org/mailman/listinfo/rspec-users
>>>
>>> _______________________________________________
>>> rspec-users mailing list
>>> rspec-users at rubyforge.org
>>> http://rubyforge.org/mailman/listinfo/rspec-users
>>>
>> _______________________________________________
>> rspec-users mailing list
>> rspec-users at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/rspec-users
>





More information about the rspec-users mailing list