[rspec-users] 1.05 to 1.08

Shane Mingins smingins at elctech.com
Tue Sep 4 17:56:20 EDT 2007


On 4/09/2007, at 3:44 PM, David Chelimsky wrote:

>
> I am going to guess that it's something like this:
>
> You have a nil object when you didn't expect it!
> You might have expected an instance of Array.
> The error occurred while evaluating nil.<<
>
> If not, please post the error (good idea to do that in general).
>
> If so, this is fixed in trunk. Attached is a patch you can use to
> address it in your rails app (apply from vendor/plugins)
>
> Please let us know if this fixes the problem.
>
> Cheers,
> David
>


Boiled down the next routes problem in a helper spec ... using  
with_routing

   it do
      with_routing do |set|

        set.draw do |map|
          map.resources :articles do |article|
            article.resources :comments, :name_prefix => 'a_' do | 
comment|
              comment.resources :ratings, :name_prefix => 'a_c_'
            end
          end
        end

        a_c_rating_path(@article, @comment, @rating).should == "/ 
articles/1/comments/1/ratings/1"

      end
   end

This works fine in 1.05 and errors in 1.08 with the error:

NoMethodError in 'CommentsHelper NO NAME (Because of Error raised in  
matcher)'
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.<<

Cheers
Shane






More information about the rspec-users mailing list