2014-01-22 2 views
0

공유 예제에서 "be_routable"정규 표현식을 사용하는 것처럼 보입니다. 컨트롤러 또는 라우팅 서브 디렉토리에 상주하지 않는 것이 가능한가요?공유 예제에서 "be_routable"정규 표현식을 사용합니까?

나는

expect(get :edit, id: 1).not_to be_routable 

내가

Failure/Error: expect(get :edit, id: 1).not_to be_routable 
ActionController::RoutingError: 
    No route matches {:id=>"1", :controller=>"leads", :action=>"edit"} 

내가 컨트롤러 디렉토리 내에서이 공유 예제를 포함하는 오류가 발생하려고, 그래서 나는이 이미

난 괜찮을 거라 생각하는 경우 설명에 "type : : controller"를 추가했지만 문제를 해결하지 못하는 것 같습니다.

이 문제를 해결하는 방법에 대한 제안 사항이 있으십니까?

답변

1

피터의 첫 번째 대답부터 시작하여 마침내 문자로 글자를 검사하기 시작했습니다. 작동하지 않는 이유는 ... 콜론입니다. 당신이

expect(get: :edit, id: 1).not_to be_routable 

expect(get :edit, id: 1).not_to be_routable 

을 변경하는 경우 그것은 마법처럼 작동합니다!

+0

죄송합니다. 내가 지적한 문서는 2.4 용이었고 이후 변경되었습니다. 필자는 이전에'expect'를 사용하는 방법을 처음 접한 적이 없었습니다. 첫 번째 인자가 빠졌을 때 (보통 비교할 값), 정규 표현자는 단지 인자 매개 변수만을 사용하고 있습니다. 혼란을 가져 미안하지만, 분명히 뭔가를 배웠습니다. –

+0

사실 나는이 같은 결론에 도달하여 내가 당신을봤을 때 개정 된 답변을 게시하고있었습니다. 고통과 고통뿐만 아니라 정확함을 위해 +1. –

+0

감사! 나는 오늘도 많이 배웠다. 가장 비싼 콜론까지 ... – Danny

관련 문제