Je soupçonne que je suis juste très bête avec cela et manquant quelque chose d'évident. Mais je suis assez nouveau pour rspec et usine fille et ne peut pas obtenir ce test simple pour travailler.Rspec contrôleur test avec usine fille
Fondamentalement, j'ai mis en place un modèle appelé la page et je appelle dans le contrôleur comme ceci:
@pages = Page.where(:page_type => "homepage").limit(2)
dans mon test, je fais ce qui suit:
before do
@pages = [Factory(:page), Factory(:page, :title=> "Contact", :content=>"contact content", :meta=>"meta content", :page_type=>'homepage') ]
get 'index'
end
it 'should set the pages variable' do
assigns[:pages].should_not be_nil
assigns[:pages].length == 2;
end
encore tout ce que je reçois est:
Failure/Error: assigns[:pages].should_not be_nil
expected not nil, got nil
d'aide grandement appréciée
Cela ne devrait-il pas être avant (: each) do, ou est-ce une faute de frappe? – zetetic
Eh bien, il est dit que vous pouvez faire soit dans le livre rspec2, c'est soit une suspension de rspec1 ou juste pour l'exécuter avant chaque test ou non. De toute façon, cela n'a pas aidé, mais merci! –
est-ce que 'affecte (: pages)' fonctionne? – zetetic