3
CanCan과 Devise가 잘 작동 했으므로 이제 테스트에 추가해야합니다.컨트롤러 사양의 장치 및 캔 캔
테스트 횟수를 두 배로 늘리겠습니까? 모든 것을 "게스트"사용자로 테스트 한 다음 사용자 및 관리자로 테스트해야합니다.
rspec을 사용하면 어떻게 배치할까요?
describe "GET edit" do
login_admin
it "assigns the requested forum_topic as @forum_topic" do
ForumTopic.stub(:find).with("37") { mock_forum_topic }
get :edit, :id => "37"
response.should redirect_to(new_user_session_path)
end
it "assigns the requested forum_topic as @forum_topic" do
ForumTopic.stub(:find).with("37") { mock_forum_topic }
get :edit, :id => "37"
assigns(:forum_topic).should be(mock_forum_topic)
end
end
도우미 모듈
능력 파일 자체를 테스트하고, 캉캉을 테스트 할 때 일반적으로 이루어집니다 무엇def login_admin
before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:admin]
sign_in Factory.create(:admin)
end
end
def login_user
before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:user]
@user = Factory.create(:user)
sign_in @user
end
end