문제

컨트롤러 => '전화', : action => 'edit'Works ... '폰/123/편집'이어야하며 RSPEC 테스트 및 갈퀴 경로에 따른 것입니다. 그러나 redirect_to 기대를 만들 때 기대치가 실패합니다.

URL에 대한 경로 테스트는 다음과 같습니다.

    it "maps #edit" do
      route_for(:controller => "phones", :action => "edit", :id => "1").should == "/phones/1/edit"
    end #THIS TEST PASSES

실패한 기대는 다음과 같습니다.

    put :update, :id => "1", :phone => {}
    response.should redirect_to :controller => 'phones', :action => 'edit'

그리고 이것은 내가 테스트에서 얻은 메시지입니다.

expected redirect to {:controller=>"phones", :action=>"edit"},
got redirect to "http://test.host/phones/1089/edit" # BUT THIS THE URL I WAS EXPECTING!

Schiznits는 무엇입니까?

도움이 되었습니까?

해결책

이것이 실패한 이유는 당신이 당신의 기대에 ID가 없기 때문입니다. 그것은해야한다:

response.should redirect_to :controller => 'phones', :action => 'edit', :id=>1
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top