Test funkcjonalny z create

Może to już kwestia zmęczenia, ale nie widzę, co mam źle w tym teście:

test "should create post" do sign_in users(:admin) post :create, :post => {:name => "Lorem"} post = assigns(:post) assert_not_nil post end
admin jest w users.yml sprecyzowany z dodatkowym polem admin: true, które jest wymagane by edytować posta (before_filter sprawdzający to pole). Korzystam z Devise.

Niestety, test nie przechodzi, bo cały czas post jest nil. Skoro identycznie zachowujący się kod w konsoli działa, zakładam, że problem leży gdzieś w kwestii admin <–> walidacja tego <–> before_filter a tym testem.

Niestety, nie wiem jak to ugryźć, żeby działało.

Tak dla jasności, test ma sprawdzić czy :

  1. Użytkownik będący adminem
  2. Może utworzyć post

Pokaż jeszcze kontroler. Czy ustawiasz tam zmienną instancji post? Powinieneś raczej sprawdzać, czy w bazie zmieniła się liczba postów.

Ustawiałem zwykłą zmienną, zamiast instancji… Dzięki za podpowiedź :wink: