Guardando attraverso un tutorial sul test del controller, l'autore fornisce un esempio di un test rspec che verifica un'azione del controllore. La mia domanda è: perché hanno usato il metodo attributes_for
su build
? Non c'è una chiara spiegazione del perché attributes_for
sia usato oltre a restituire un hash di valori.Significato per attributes_for in Test FactoryGirl e Rspec
it "redirects to the home page upon save" do
post :create, contact: Factory.attributes_for(:contact)
response.should redirect_to root_url
end
Il collegamento tutorial è trovato qui: http://everydayrails.com/2012/04/07/testing-series-rspec-controllers.html L'esempio si trova nella sezione argomento che inizia Controller testing basics
Grazie pjam, lo capisco ora! Stai diventando sempre più un mentore rspec per me in overstackflow. – jason328
cercavo questa risposta dappertutto. Un segno però ... come potrei aggirare 'post: create, user: u.attributes' se alcuni di quegli attributi non sono accessibili nel modello? –
Non sono sicuro di aver capito cosa vuoi, intendi se alcuni attributi non sono nella lista attr_accessible? Quindi non vedo quale sia il problema, potrei mancare qualcosa qui – pjam