2011-08-23 11 views
8

La siguiente prueba RSpec 2 ..método Indefinido para la clase en Rspec

describe "GET new" do 
    describe "gets a report form" do 
    xhr :get, :new, :post_id => @post 
    response.should be_success 
    end 
end 

da este bonito error:

undefined method xhr for #<Class:0xb5c72404> (NoMethodError)

Alguna idea de lo que está mal?

+0

¿Están sus pruebas anidadas en 'describe controller_name'? – apneadiving

+0

sí, ¿existen reglas especiales sobre cómo se deben anidar los bloques de descripción? – 0x4a6f4672

+0

¿Ha requerido 'spec_helper'? –

Respuesta

16

Resulta que debe usar una declaración it en el bloque describe. Entonces el error desaparece. Si no utiliza la cantidad correcta de bloques describe y it, entonces RSpec produce todo tipo de errores extraños. Este es el código correcto:

describe "GET new" do 
    it "gets a report form" do 
    xhr :get, :new, :post_id => @post 
    response.should be_success 
    end 
end 
+0

maldición, no vi eso :) +1 – apneadiving

Cuestiones relacionadas